HIVE和HBASE的整合步骤
来源:互联网 发布:php 工厂模式 代码 编辑:程序博客网 时间:2024/05/20 16:36
我们已经在130和159机器上搭建HBASE的2节点集群,并且在130上安装了HIVE。目前要做的工作是把HIVE和HBASE整合起来。
详细信息如下:
节点性质 IP地址 机器名
Master 10.18.11.130 rac1
Slave 10.18.11.159 rac4
1.复制HBASE的相关文件给HVIE
拷贝hbase/lib下hbase-0.94.4.jar、zookeeper-3.4.5.jar、protobuf-java-2.4.0a.jar到hive/lib下
ok
2.修改hive的hive-site.xml文件
<property>
<name>hive.querylog.location</name>
<value>/home/software/hive-0.8.1/logs</value>
</property>
<property>
<name>hive.aux.jars.path</name>
<value>file:///home/software/hive-0.8.1/lib/hive-hbase-handler-0.8.1.jar,file:///home/software/hive-0.8.1/lib/hbase-0.94.4.jar,file:///home/software/hive-0.8.1/lib/zookeeper-3.4.5.jar,file:///home/software/hive-0.8.1/lib/hive-contrib-0.8.1.jar,file:///home/software/hive-0.8.1/lib/protobuf-java-2.4.0a.jar</value>
</property>
路径根据自己的实际路径设置
3.修改hive-env.sh文件
exportHIVE_CONF_DIR=/home/software/hive-0.8.1/conf
export HADOOP_HEAPSIZE=1024
4.分发hbase-0.94.4.jar
拷贝hbase-0.94.4.jar到所有hadoop节点(包括master)的hadoop/lib下。
5.分发hbase-site.xml
拷贝hbase/conf下的hbase-site.xml文件到所有hadoop节点(包括master)的hadoop/conf下
6.启动HBASE
如果已经启动了,则不需要启动
start-hbase.sh
7.启动hive
使用集群启动方式。
单节点启动方式:
hive -hiveconf hbase.master=rac1:490001
集群启动方式:
hive -hiveconf hbase.zookeeper.quorum=rac4
以下不需要:
hive --auxpath/home/software/hive-0.8.1/lib/hive-hbase-handler-0.8.1.jar,/home/software/hive-0.8.1/lib/hbase-0.94.4.jar,/home/software/hive-0.8.1/lib/zookeeper-3.4.5.jar-hiveconf hbase.master=rac1:490001
hive --auxpath/home/software/hive-0.8.1/lib/hive-hbase-handler-0.8.1.jar,/home/software/hive-0.8.1/lib/hbase-0.94.4.jar,/home/software/hive-0.8.1/lib/zookeeper-3.4.5.jar-hiveconf hbase.zookeeper.quorum=rac4
8.测试
1)在HBASE中创建表hbase_table_1
登陆hive:
hive -hiveconf hbase.zookeeper.quorum=rac4
创建表:
CREATE TABLE hbase_table_1(key int, valuestring) STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITHSERDEPROPERTIES("hbase.columns.mapping" = ":key,cf1:val")TBLPROPERTIES("hbase.table.name" = "xyz");
说明:
hbase.table.name 定义在hbase的table名称
hbase.columns.mapping 定义在hbase的列族
2)建立hive的表:
登陆hive:
创建表:
CREATE TABLE pokes1(foo INT, bar STRING);
3)给hive的表pokes装载数据:
LOAD DATA LOCAL INPATH'/home/software/hive-0.8.1/examples/files/kv1.txt' OVERWRITE INTO TABLE pokes1;
4)使用hive的sql方式,给hbase_table_1表导入数据:
INSERT OVERWRITE TABLE hbase_table_1 SELECT* FROM pokes1 WHERE foo=238;
5)使用hbase给xyz表添加数据:
hbase shell
put 'xyz','100','cf1:val','tomtest'
6)在HBASE的表中查询记录:
登陆hive集群:
hive -hiveconf hbase.zookeeper.quorum=rac4
select * from hbase_table_1;
结果如下:
- HIVE和HBASE的整合步骤
- hive和hbase的整合
- HBase和Hive的整合
- Hbase和Hive整合
- hbase和hive整合
- Hive和Hbase整合
- hive和hbase整合
- Hive和Hbase整合
- Hive和HBase整合
- hive和hbase整合
- hive和hbase的整合-转
- Hive和HBase的整合原理
- Hive和Hbase的数据整合联系
- Hive和HBase的整合原理
- 【Hive/HBase】Hive与HBase的整合
- Hive与HBase的整合
- Hive与HBase的整合
- Hive与Hbase的整合
- Protel DXP出现错误" Fail to load Parallel Port Driver" 的解决
- OpenCV图像灰度化
- Textures objects and parameters
- Java开发中的23种设计模式详解
- MongoDB学习之一----Windows上安装MongoDB
- HIVE和HBASE的整合步骤
- 我的姐姐们
- java.util.ResourceBundle使用详解
- 设置程序及链接库环境变量
- 绑定端口
- 触发器一个案例
- window.open、window.showModalDialog和window.showModelessDialog 的区别
- if...elseif...else 的运用
- 计算机硬件组成概述