前言

本文隶属于专栏《1000个问题搞定大数据技术体系》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!

本专栏目录结构和参考文献请见1000个问题搞定大数据技术体系

正文

Hive是底层封装了 Hadoop 的数据仓库处理工具,它运行在 Hadoop基础上,其系统架构组成主要包含4个部分,分别是用户接口、跨语言服务、底层的驱动引擎以及元数据存储系统。

下面针对 Hive 系统架构的组成部分进行讲解。

1. 用户接口

主要分为 3 个,分别是 CLI 、 JDBC / ODBC 和 WebUI 。

其中, CLI 即 Shell 终端命令行,它是最常用的方式。

JDBC / ODBC 是 Hive 的 Java 实现,与使用传统数据库 JDBC 的方式类似, WebUI 指的是通过测览器访问 Hive 。

2. 跨语言服务( Thrift Server )

Thrift 是 Facebook 开发的一个软件框架,可以用来进行可扩展且跨语言的服务。

Hive 集成了该服务,能让不同的编程语言调用 Hive 的接口。

关于 Thrift 的更多内容请参考我的这篇博客——Apache Thrift是什么?

3. 底层的驱动引擎(Driver)

主要包含解析器( SQL Parser ),编译器( Compiler ),优化器( Optimizer )和执行器( Executor )

它们用于完成 HQL 查询语句从词法分析、语法分析、编译、优化以及查询计划的生成,生成的查询计划存储在 HDFS 中,并在随后由 MapReduce 调用执行。

Hive 的底层计算引擎可选为:MapReduce,Spark,Tez

4. 元数据存储系统( Metastore )

Hive 中的元数据通常包含表名、列、分区及其相关属性,表数据所在目录的位置信息, Metastore 默认存在自带的 Derby 数据库中。

由于 Derby 数据库不适合多用户操作,并且数据存储目录不固定,不方便管理,因此,通常都将元数据存储在 MySQL 数据库。

一篇文章搞懂 Hive 的系统架构相关推荐

  1. 一篇文章搞懂数据仓库:数据仓库架构-Lambda和Kappa对比

    在介绍Lambda和Kappa架构之前,我们先回顾一下数据仓库的发展历程: 传送门-数据仓库发展历程 写在前面 咳,随着数据量的暴增和数据实时性要求越来越高,以及大数据技术的发展驱动企业不断升级迭代, ...

  2. 一篇文章搞懂filebeat(ELK)

    一篇文章搞懂filebeat(ELK) https://www.cnblogs.com/zsql/p/13137833.html 目录 一.filebeat是什么 1.1.filebeat和beats ...

  3. c++ 计算正弦的近似值_一篇文章搞懂正弦保真性

    本文介绍数字信号处理中"正弦保真性"这一概念,想要更好地理解本文所述内容,建议读者先阅读<一篇文章搞懂卷积>. 正弦保真性定义 一个正弦信号作为线性时不变系统的输入时, ...

  4. 【一篇文章搞懂】什么是分布式锁?为什么要用分布式锁?看这篇文章准没错!

    简介 HikariCP 是用于创建和管理连接,利用"池"的方式复用连接减少资源开销,和其他数据源一样,也具有连接数控制.连接可靠性测试.连接泄露控制.缓存语句等功能,另外,和 dr ...

  5. 一篇文章搞懂架构师的核心技能

    " 这是架构师系列的第一篇:核心技能,希望这个系列能完全揭示架构师这个职位:我先从核心技能开始,后续还有架构师之路,架构实战等架构师系列文章. 本文作者 陈睿 优知学院创始人,前携程定制旅游 ...

  6. 一篇文章搞懂 Apache Kylin 4.x 的技术架构

    前言 本文隶属于专栏<1000个问题搞定大数据技术体系>,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢! 本专栏目录结构和文献引用请见1000个问题搞定大数据技 ...

  7. 一篇文章搞懂Java架构师的核心技能及薪资!

    Java架构师一般的薪资是多少?高不高?一般来讲,Java架构师是一个比较全面的职位,它既需要学习Java开发工具.性能优化.源码分析.分布式架构.微服务架构和多线程并发编程等基础技术,又需要有组织能 ...

  8. 组件化开发实战_一篇文章搞懂什么是前端“组件化”开发

    学过网页的朋友都知道,制作一个网页离不开HTML.CSS和JavaScript技术.对于初学者来来说,掌握这3门技术就已经很不容易了,为什么前端为什么又要搞出来一个"组件化"开发的 ...

  9. reactrouter监听路由变化_一篇文章搞懂前端路由原理解析和实现方式

    在单页应用如此流行的今天,曾经令人惊叹的前端路由已经成为各大框架的基础标配,每个框架都提供了强大的路由功能,导致路由实现变的复杂. 想要搞懂路由内部实现还是有些困难的,但是如果只想了解路由实现基本原理 ...

最新文章

  1. delphi开发回忆录——示例源码下载
  2. PMCAFF 八周年老友会倒计时 | 北京活动
  3. 【分析】2014移动互联网数据报告(终极版必收!)
  4. SpringAop对struts2的Action设置切面织入时报错java.lang.NoSuchMethodException
  5. kaggle上面的score以及ROC_AUC数值咋回事
  6. GPU Pro2 - 1.Terrain and Ocean Rendering with Hardware Tessellation
  7. android studio资源二进制,无法自动检测ADB二进制文件 – Android Studio
  8. python股票历史最低点_Python统计某一只股票每天的开盘,收盘,最高,最低价格!...
  9. 吴恩达神经网络和深度学习-学习笔记-4-深度网络
  10. sql 查询id 逗号拼接_sql查询列进行STUFF()拼接 单引号 逗号_xml path excel
  11. 【win10】装机必备推荐软件,提升你的计算机使用效率!
  12. vSphere Esxi 7.0打包网卡驱动
  13. Unit firewalld.service could not be found
  14. 恒生电子2018秋招笔经面经(开发岗)
  15. 腾讯云TCA运维工程师认证题库及例题示范
  16. 《自然遗传学》:一个基因变异就能引发神经发育障碍
  17. 天庭云计算机键盘无法输入,Win7系统下无线键盘失灵无法输入的解决方法
  18. 蘑菇街收购锐鲨科技,志在押注国货新浪潮?
  19. vps php mail,TMail v5.2 – PHP多域名临时电子邮件系统
  20. 大数据面试3分钟自我介绍_大数据面试自我介绍技巧

热门文章

  1. Python标准库中的marshal模块
  2. 随手记录,idea无法创建class,文件夹没有小圆点
  3. Win7文字显示解决办法
  4. 难倒笔迹鉴定专家?这位 AI 机器人能模仿任何人笔迹!
  5. 互联网早报:前程无忧将上线“简历下载水印”等功能,可显示简历流向路径
  6. three.js添加文字
  7. 网页版vnc实时监控、控制手机、pc桌面
  8. 蛋花花谈怎么区分web的前端与后端
  9. wifi密码那些事儿
  10. linux lsof 源码分析,linux lsof详解