首页 » 大数据 » Hadoop » Hadoop学习笔记(3)--Hive

Hadoop学习笔记(3)--Hive

 

Hive是建立在Hadoop上的数据仓库基础构架。
它提供了一系列的工具,用来进行数据提取、转化、加载,这是一种可以存储
、查询和分析存储在Hadoop中的大规模数据的机制。

根据管理层次

(1)元数据存储

Hive将元数据存储在RDBMS中,有三种模式可以连接到数据库:

  • Single User Mode:此模式连接到一个In-memory的数据库Derby,一般用于Unit Test。
  • Multi User Mode:通过网络连接到一个数据库中,这是最常用的模式。
  • Remote Server Mode:用于非Java客户端访问元数据库,在服务器端启动一个。

MetaStoreServer,客户端利用Thrift协议通过MetaStoreServer来访问元数据库。

(2)数据存储

Hive没有专门的数据存储格式,也没有为数据建立索引,用户可以非常自由地组织Hive中的表,只需要在创建表的时候告诉Hive数据中的列分隔符和行分隔符,它就可以解析数据了。

Hive中所有的数据都存储在HDFS中,Hive中包含4种数据模型:Table、External Table、Partition和Bucket。

3)数据交换

数据交换主要分为以下几部分,

  • 用户接口:包括客户端、Web界面和数据库接口。
  • 元数据存储:通常存储在关系数据库中,如MySQL、Derby等。

    Hive将元数据存储在数据库中。元数据包括表的名字、表的列、表的分区、表分区的属性等等。

  • 解释器、编译器、优化器、执行器。

    完成Hive QL查询语句、从词法分析、语法分析、编译、优化到查询计划的生成。



原文链接:Hadoop学习笔记(3)--Hive,转载请注明来源!

0