Hadoop Hive与Hbase整合
用hbase做数据库,但由于hbase没有类sql查询方式,所以操作和计算数据非常不方便,于是整合hive,让hive支撑在hbase数据库层面 的 hql查询.hive也即 做数据仓库
本次试验目的讲述如何让Hbase和Hive能互相访问,让Hadoop/Hbase/Hive协同工作,合为一体。
本次试验目的讲述如何让Hbase和Hive能互相访问,让Hadoop/Hbase/Hive协同工作,合为一体。
1. 拷贝hbase-common-0.98.6-cdh5.2.0.jar和zookeeper-3.4.5-cdh5.2.0.jar到hive/lib下。
注意:如何hive/lib下已经存在这两个文件的其他版本,建议删除后使用hbase下的相关版本。
2. 修改hive/conf下hive-site.xml文件,在底部添加如下内容:
<property>
<name>hive.aux.jars.path</name>
<value>file:
///home/kkzhangtao/hive-0.13.1-cdh5.2.0/lib/hive-hbase-handler-0.8.0.jar,file:///home/kkzhangtao/hive-0.13.1-cdh5.2.0/lib/hbase-common-0.98.6-cdh5.2.0.jar,file:///home/kkzhangtao/hive-0.13.1-cdh5.2.0/lib/zookeeper-3.4.5-cdh5.2.0.jar</value>
</property>
|
注意:如果hive-site.xml不存在则自行创建,或者把hive-default.xml.template文件改名后使用。
3. 拷贝 hbase-common-0.98.6-cdh5.2.0.jar到所有hadoop节点(包括master)的hadoop/lib下。
4. 拷贝hbase/conf下的hbase-site.xml文件到所有hadoop节点(包括master)的hadoop/conf下。
现在可以尝试启动Hive了。
单节点启动:
1
|
> bin/hive -hiveconf hbase.master=master:
60000
|
集群启动:
1
|
> bin/hive -hiveconf hbase.zookeeper.quorum=slave
|