Hive精华问答 | Hive的资料模型是怎样的?

发布于2019-07-11 21:50:46

导读: Hive是一个数据仓库基础工具,它是建立在Hadoop之上的资料仓库,在某种程度上可以把它看做使用者程式设计界面(API),本身也并不储存和处理资料,依赖于HDF

Hive是一个数据仓库基础工具,它是建立在Hadoop之上的资料仓库,在某种程度上可以把它看做使用者程式设计界面(API),本身也并不储存和处理资料,依赖于HDFS储存资料,依赖MR处理资料。它提供了一系列对资料进行提取、转换、载入的工具。依赖于HDFS储存资料,依赖MR处理资料。

1

Q:Hive是什么?

A:Hive是基于Hadoop的一个数据仓库工具,可以将结构化的资料档案对映为一张数据库表,并提供类SQL查询功能。本质是将HQL转换为MapReduce程式。

2

Q:Hive的设计目标是什么?

A:1、Hive的设计目标是使Hadoop上的资料操作与传统SQL相结合,让熟悉SQL程式设计开发人员能够轻松向Hadoop平台迁移

2、Hive提供类似SQL的查询语言HQL,HQL在底层被转换为相应的MapReduce操作

3、Hive在HDFS上构建资料仓库来储存结构化的资料,这些资料一般来源与HDFS上的原始资料,使用Hive可以对这些资料执行查询、分析等操作。

3

Q:Hive的资料模型是怎样的?

A:Hive数据库

内部表

外部表

分割槽

Hive的检视

Hive在建立内部表时,会将资料移动到资料仓库指向的路径,若建立外部表,仅记录资料所在的路径,不对资料位置做任何改变,在删除表的时候,内部表的元资料和资料会被一起删除,外部表只会删除元资料,不删除资料。这样来说,外部表要比内部表安全,资料组织液更加灵活,方便共享源资料。

4

Q:Hive都有哪些呼叫方式?

A1、Hive Shell

2、Thrift

3、JDBC

4、ODBC

5

Q:Hive的执行机制是什么?

A:1、将sql转换成抽象语法树

2、将抽象语法树转化成查询块

3、将查询块转换成逻辑查询计划(操作符树)

4、将逻辑计划转换成物理计划(MRjobs)

福利

扫描新增小编微信,备注“姓名+公司职位”,加入【云端计算学习交流群】,和志同道合的朋友们共同打卡学习!

相关文章