欢迎投稿

今日深度:

Hive学习笔记(一)---Hive简介,

Hive学习笔记(一)---Hive简介,


Hive的产生

非java编程者对hdfs的数据做MR操作。

Hive简介

Hive架构

hive的架构:

1.用户接口主要有3个:CLI,Client和WUI。其中最常用的就是CLI,cli在启动的时候,会同时启动一个hive副本。Client是Hive的客户端,用户连接至Hive Server。在启动Client模式的时候,需要指出Hive Server所在的节点,并且在该节点启动Hive Server。WUI是通过浏览器访问Hive。
2.Hive将元数据存储在数据库中,如mysql,derby。Hive中的元数据包括表的名字,表的列和分区及其属性,表的属性(是否是外部表等),表的数据所在目录等。
3.解释器、编译器、优化器完成HQL查询语句从从词法分析、语法分析、编译、优化以及查询计划的生成。生成的查询计划存储在HDFS中,并在随后有MapReduce调用执行。简单流程就是:sql–>>抽象语法树–>>查询块—>>逻辑查询计划–>>物理查询计划–>>优化执行。
4.Hive中的数据存储在HDFS中,大部分的查询、计算由MapReduce完成(包含*的查询,比如select * from tbl不会生成MapRedcue任务)。

流程描述

Client首先提交请求给Hive的Driver,然后Driver访问Metastore以检索是否有这张表。如果有就转换sql;否则,不转。整体返回一个true or false。Driver拿到这个返回值,访问Compiler进行编译、优化。Compiler编译完之后,会返回给Driver一个MR任务。之后Driver才会把手里的这个MR任务交给Hadoop。Hadoop会执行MR Task会得到一个结果,返回给Client。

Tips:
编译器将一个Hive SQL转换操作符;
操作符是Hive的最小的处理单元;
每一个操作符代表HDFS中的一个操作或者一道MapReduce作业;

www.htsjk.Com true http://www.htsjk.com/hive/31653.html NewsArticle Hive学习笔记(一)---Hive简介, Hive的产生 非java编程者对hdfs的数据做MR操作。 Hive简介 Hive架构 hive的架构: 1.用户接口主要有3个:CLI,Client和WUI。其中最常用的就是CLI,cli在启动的时候...
相关文章
    暂无相关文章
评论暂时关闭