Hive简介
陈文文
Agenda
u Hive架构
u Hive DDL
u Hive DML
u Hive 查询
u Hive 函数
Hive架构
MySQL
Hadoop
Hive 和 Hadoop 关系
Hadoop结构
ØNameNode可以看作是分布式文件系统中的管理者,主要负责管理文件系统
的命名空间、集群配置信息和存储块的复制等;
ØDataNode是文件存储的基本单元,它将Block存储在本地文件系统中,保存了
Block的Meta-data,同时周期性地将所有存在的Block信息发送给NameNode。
ØJobTracker的主要职责就是启动、跟踪和调度各个Slave的任务执行。
ØTaskTracker根据应用要求来结合本地数据执行Map任务以及Reduce任务。
Map/reduce思想
先分割再合并
Hive VS. RDBMS
Item
Hive
RDBMS
查询语言
数据存储
索引
HQL
HDFS
无
SQL
Raw Device or FS
有
执行
执行延迟
处理数据规模
MapReduce
高
大
Excutor
低
小
Hive 数据模型
ØTABLE:和RDBMS中的 Table 在概念上是类似的,每一个Table 在
Hive中都有一个相应的目录存储数据。
ØPartition :对应于RDBMS中的 Partition 列的密集索引,但是 Hive 中
Partition 的组织方式和数据库中的很不相同。在 Hive 中,表中的一个
Partition 对应于表下的一个目录,所有的 Partition 的数据都存储在对
应的目录中.
ØBuckets :对指定列计算 hash,根据 hash 值切分数据,每一个
Bucket 对应一个文件。
ØExternal Table: 指向已经在 HDFS 中存在的数据,可以创建
Partition。它和 Table 在元数据的组织上是相同的,而实际数据的存储
则有较大的差异。