`

Hive学习系列(一)什么是Hive及Hive的架构

    博客分类:
  • Hive
阅读更多

       最近一直在忙面试的事情,面试过程中碰到几家公司都问到了Hive,但是由于最近三年一直在忙海外数据仓库的事情,对于大数据的只限于了解,未有实际的使用,为了更好的面试,特总结了下Hive的相关知识

(1)什么是Hive

        1.1 Hive是Hadoop工具家族中一个重要成员,可以将结构化的数据文件(HDFS)映射为一张数据库表。

        1.2 Hive 定义了简单的类 SQL 查询语言,被称为 HQL,实现方便高效的数据查询

        1.3 Hive的本质是将HQL,转换成MapReduce任务,完成整个的数据的ETL,减少编写MapReduce的复杂度

(2)Hive的体系结构

        Hive架构包括如下组件:CLI(command line interface)、JDBC/ODBC、Thrift Server、Hive WEB Interface(HWI)、metastore和Driver(Complier、Optimizer和Executor)

       Driver组件:核心组件,整个Hive的核心,该组件包括Complier、Optimizer和Executor,它的作用是将我们写的HQL语句进行解析、编译优化,生成执行计划,然后调用底层的MapReduce计算框架。

       Metastore组件:元数据服务组件,这个组件存储hive的元数据,hive的元数据存储在关系数据库里,hive支持的关系数据库有derby、mysql。

       CLI:command line interface,命令行接口。

  ThriftServers:提供JDBC和ODBC接入的能力,它用来进行可扩展且跨语言的服务的开发,hive集成了该服务,能让不同的编程语言调用hive的接口。

  Hive WEB Interface(HWI):hive客户端提供了一种通过网页的方式访问hive所提供的服务。这个接口对应hive的hwi组件(hive web interface)

       

(3)Hive的执行流程简单示意图

Hive 将通过CLI接入,JDBC/ODBC接入,或者HWI接入的相关查询,通过Driver(Complier、Optimizer和Executor),进行编译,分析优化,最后变成可执行的MapReduce。 

大家看到这些是不是特别熟悉,对的这个和传统的数据库的结构非常类似,我这里找了下一个Maysql的结构

      Hive 功能有点类似传统的服务协议,解析器,预处理器,优化器,查询执行计划这些功能的汇总。

      只不过Hive是将HQL转换成MapReduce,而传统的数据将SQL转换成执行引擎可以识别的语言

 

(4)Hive的执行流程示意图(详细)

这张图是Hive执行的一个详细流程,这里面很多东西我还在学习,所以先放在这里

(5)本章总结

   本章主要介绍了什么是Hive,Hive的体系结构,后面还有一系列Hive的文章

 

 

Hive学习系列(二)Hive的查询流程详解 

 Hive学习系列(一)什么是Hive及Hive的架构

 

 

  • 大小: 77.9 KB
  • 大小: 87 KB
  • 大小: 202.9 KB
  • 大小: 117.1 KB
1
1
分享到:
评论

相关推荐

    Hive新手学习资料之Hive入门与实战.+Hive用户手册+hive函数大全中文版资源合集

    Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能。 hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储...

    hive学习总结 思维导图.xmind

    由于 Hive 采用了类似SQL 的查询语言 HQL(Hive Query Language),因此很容易将 Hive 理解为数据库。其实从结构上来看,Hive 和数据库除了拥有类似的查询语言,再无类似之处。本文将从多个方面来阐述 Hive ...

    hive学习资料大全 实战优化资源

    hive被大多数企业使用,学习它,利于自己掌握企业所使用的技术,这里从安装使用到概念、原理及如何使用遇到的问题,来讲解hive,希望对大家有所帮助。 此篇内容较多: 看完之后需要达到的目标 1.hive是什么 2.明白...

    基于Hadoop的数据仓库Hive学习指南.doc

    该文档目录如下: ...1.1 基于Hadoop的数据仓库Hive学习指南 1.2实验环境 1.3实验原理 1.3.1 Hive简介 1.3.2 Hive安装 1.3.3安装并配置mysql 1.3.5 Hive简单编程实践 1.3.4 Hive的常用HiveQL操作

    hive学习和习题集

    Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能。(1)解析器(SQL Parser):将SQL字符串转换成抽象语法树AST,这一步一般都用第三方工具库完成,比如antlr;对AST...

    hive学习笔记

    hive hadoo MapReduce 介绍Hive。Hive入门,Hive学习笔记

    Hive学习资料书籍压缩文件

    hive学习资料-hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速...

    Hive学习必备——配置Hive环境教程 免费分享哦~

    Hive学习必备——配置Hive环境教程 免费分享哦~

    Hive 学习笔记1

    Hive 学习笔记Hive

    HIVE大数据学习资源

    HIVE大数据学习资源

    大规模数据查询Hive及Impala技术原理及架构.pdf

    大规模数据查询Hive及Impala技术原理及架构

    hive的学习资料

    hive 的具体操作 有关于hive安装 使用等基本步骤

    Hive3.1.2编译源码

    使用hive3.1.2和spark3.0.0配置hive on spark的时候,发现官方下载的hive3.1.2和spark3.0.0不兼容,hive3.1.2对应的版本是spark2.3.0,而spark3.0.0对应的hadoop版本是hadoop2.6或hadoop2.7。 所以,如果想要使用高...

    利用Hive进行复杂用户行为大数据分析及优化案例

    02_Hive表批量加载数据的脚本实现(一) 03_Hive表批量加载数据的脚本实现(二) 04_HIve中的case when、cast及unix_timestamp的使用 05_复杂日志分析-需求分析 06_复杂日志分析-需求字段讲解及过滤 07_复杂日志分析...

    王家林hive学习资料

    详细介绍hive基本知识,以及实战,包括hive的安装部署

    HIVE安装及详解

    HIVE安装及详解,及测试,该文档版本是1.2+的。。。。。

    hive

    hive hive hive hive hive hive hive hive hive hive hive hive

    Hive使用手册Hive使用手册

    4.2.1 Hive 新增一个字段: 4 4.2.2 Hive 修改字段名/字段类型/字段位置/字段注释: 4 4.2.3 Hive 重命名表名: 4 4.3Hive 删除表: 4 5 Hive 分区 4 5.1 Hive 添加分区 4 5.2 Hive 删除分区 5 6 SHOW语句 5 7 ...

    Hive学习总结及应用.pdf

    Hive学习总结及应用.pdf

Global site tag (gtag.js) - Google Analytics