Hive整合HBase 通过Hive读/写HBase中的表
来源:互联网 发布:ipv4网络协议问题分析 编辑:程序博客网 时间:2024/06/05 13:27
写在前面一:
本文将Hive与HBase整合在一起,使Hive可以读取HBase中的数据,让Hadoop生态系统中最为常用的两大框架互相结合,相得益彰。
写在前面二:
使用软件说明
约定所有软件的存放目录:
/home/yujianxin
一、Hive整合HBase原理
Hive与HBase整合的实现是利用两者本身对外的API接口互相进行通信,相互通信主要是依靠hive-hbase-handler-0.9.0.jar工具类,如下图
Hive与HBase通信示意图
二、具体步骤
安装前说明
1、关于Hadoop、HBase、Hive集群的搭建,请参考本人博文“基于Hadoop的数据分析综合管理平台之Hadoop、HBase完全分布式集群搭建”
2、本文中Hadoop、HBase、Hive安装路径
2.1、拷贝jar包
删除$HIVE_HOME/lib/下HBase、Zookeeper相关jar
2.2、修改$HIVE_HOME/conf/hive-site.xml
mkdir $HIVE_HOME/logs
在尾部添加
修改
2.3、拷贝hbase-0.94.7-security.jar到所有hadoop节点(包括master)的hadoop/lib下
2.4、拷贝hbase/conf下的hbase-site.xml文件到所有hadoop节点(包括master)的hadoop/conf下
三、启动、使用配置后Hive,测试是否配置成功
3.1、启动Hive
集群方式启动
可以将此启动Hive与HBase整合的命令写成Shell脚本,设置成开机启动
3.2、在Hive中创建HBase识别的表
hbase.table.name 定义在hbase中的table名称
多列时,data:1,data:2多列族时,data1:1,data2:1
hbase.columns.mapping 定义在hbase的列族,里面的:key 是固定值而且要保证在表pokes中的foo字段是唯一值
创建有分区的表
分别查看Hive、HBase中建立的表
3.3、导入数据
新建hive的数据表
create table pokes(foo int,bar string)row format delimited fields terminated by ',';
批量导入数据
load data local inpath '/home/yujianxin/temp/data1.txt' overwrite into table pokes;
使用sql导入hbase_table_1
SET hive.hbase.bulk=true;
insert overwrite table hbase_hive_1 select * from pokes;
导入有分区的表
insert overwrite table hbase_hive_2 partition (day='2012-01-01') select * from pokes;
往Hive中插入数据同时会插入到HBase中
3.4、分别查看Hive、HBase中的数据
OK,到此Hive、HBase整合成功。
——————————————————————————————————————————————————————————————————
下面再给出较复杂的测试例子
情况一、对于在hbase已经存在的表,在hive中使用CREATE EXTERNAL TABLE来建立联系
查询gid字段中value值
Hive成功读取到HBase中的数据
情况二、如果hbase表test2中的字段为user:gid,user:sid,info:uid,info:level
在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中的表
- 通过hive访问hbase中的表
- Hive整合HBase,操作HBase表
- Hive整合HBase,操作HBase表
- hive系列-hive整合hbase
- 【Hive/HBase】Hive与HBase的整合
- Hbase和Hive整合
- Hive HBase 整合
- Hive HBase 整合(中文)
- Hive HBase 整合(中文)
- hive+hbase整合
- hive与hbase整合
- c++ 只有返回值不同类成员函数重载
- 【Linux】 技巧:让进程在后台可靠运行的几种方法
- 大话设计模式----原型模式
- 通过jQuery来输出html代码的技巧
- Oracle date 和 timestamp 区别 原文出处: http://www.cnblogs.com/java-class/
- Hive整合HBase 通过Hive读/写HBase中的表
- 旷视科技完成4.6亿美元C轮融资,再破AI融资记录 | 聚焦
- nginx负载均衡配置(简单快速)
- 数据库索引到底是什么,是怎样工作的?
- 前端H5技术实现解析文件内容(txt为例)
- 【Linux】GDB 调试 C++ 程序 core dump
- Elasticsearch 教程
- 我们只知大势将至,却不知未来已来
- 搞笑动图:这些痛,只有程序员懂…