前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Hive与Hbase整合

Hive与Hbase整合

作者头像
Hongten
发布2019-02-25 11:14:22
6470
发布2019-02-25 11:14:22
举报
文章被收录于专栏:HongtenHongten

Hive与Hbase整合

1.文档

Hive HBase Integration

2.拷贝jar文件

2.1.把Hbase的lib目录下面的jar文件全部拷贝到Hive的lib目录下面

代码语言:javascript
复制
cd /home/hbase/lib
cp ./* /home/hive/lib

2.2.把Hive的lib目录下面的hive-hbase-handler-0.13.1.jar拷贝到Hbase的lib目录下面

代码语言:javascript
复制
cp /home/hive/lib/hive-hbase-handler-0.13.1.jar /home/hbase/lib/

3.修改Hive/conf目录下面的配置文件

代码语言:javascript
复制
cd /home/hive/conf
vi hive-site.xml

<!-- Hbase zookeeper quorum   -->
<property>
    <name>hbase.zookeeper.quorum</name>
    <value>node1,node2,node3</value>
</property>

4.在Hbase中创建表

代码语言:javascript
复制
--在Hbase中创建表
create 'hbase_to_hive_t_user', 'cf_user_info'

hbase(main):010:0> desc 'hbase_to_hive_t_user'
Table hbase_to_hive_t_user is ENABLED                                                      
COLUMN FAMILIES DESCRIPTION                                                                
{NAME => 'cf_user_info', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW', REPLICATION_S
COPE => '0', VERSIONS => '1', COMPRESSION => 'NONE', MIN_VERSIONS => '0', TTL => 'FOREVER',
 KEEP_DELETED_CELLS => 'FALSE', BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => '
true'}                                                                                     
1 row(s) in 0.0650 seconds

5.在Hbase表中插入数据

代码语言:javascript
复制
--插入数据
put 'hbase_to_hive_t_user', '1', 'cf_user_info:name','Tom'
put 'hbase_to_hive_t_user', '1', 'cf_user_info:age',24
put 'hbase_to_hive_t_user', '2', 'cf_user_info:name','John'
put 'hbase_to_hive_t_user', '2', 'cf_user_info:age',18
put 'hbase_to_hive_t_user', '3', 'cf_user_info:name','Steven'
put 'hbase_to_hive_t_user', '3', 'cf_user_info:age',38


scan 'hbase_to_hive_t_user'
hbase(main):009:0> scan 'hbase_to_hive_t_user'
ROW                     COLUMN+CELL                                                        
 1                      column=cf_user_info:age, timestamp=1546754368046, value=24         
 1                      column=cf_user_info:name, timestamp=1546754367972, value=Tom       
 2                      column=cf_user_info:age, timestamp=1546754368166, value=18         
 2                      column=cf_user_info:name, timestamp=1546754368103, value=John      
 3                      column=cf_user_info:age, timestamp=1546754370447, value=38         
 3                      column=cf_user_info:name, timestamp=1546754368211, value=Steven    
3 row(s) in 0.1600 seconds

6.在Hive中创建数据库表关联Hbase里面的表

代码语言:javascript
复制
--如果你想要Hive去访问Hbase中已经存在的表,你可以创建外部表(CREATE EXTERNAL TABLE)

CREATE EXTERNAL TABLE hive_access_hbase_table_t_user (key string, name string, age int)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf_user_info:name,cf_user_info:age")
TBLPROPERTIES ("hbase.table.name" = "hbase_to_hive_t_user");

6.1.在Hive中查询Hbase表里的数据

代码语言:javascript
复制
select * from hive_access_hbase_table_t_user;

hive> select * from hive_access_hbase_table_t_user;
OK
1    Tom    24
2    John    18
3    Steven    38
Time taken: 0.325 seconds, Fetched: 3 row(s)

7.Reference

https://blog.csdn.net/qq_33689414/article/details/80328665

https://blog.csdn.net/aaronhadoop/article/details/28398157

========================================================

More reading,and english is important.

I'm Hongten

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-01-06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Hive与Hbase整合
    • 1.文档
      • 2.拷贝jar文件
        • 2.1.把Hbase的lib目录下面的jar文件全部拷贝到Hive的lib目录下面
        • 2.2.把Hive的lib目录下面的hive-hbase-handler-0.13.1.jar拷贝到Hbase的lib目录下面
      • 3.修改Hive/conf目录下面的配置文件
        • 4.在Hbase中创建表
          • 5.在Hbase表中插入数据
            • 6.在Hive中创建数据库表关联Hbase里面的表
              • 6.1.在Hive中查询Hbase表里的数据
            • 7.Reference
            相关产品与服务
            TDSQL MySQL 版
            TDSQL MySQL 版(TDSQL for MySQL)是腾讯打造的一款分布式数据库产品,具备强一致高可用、全球部署架构、分布式水平扩展、高性能、企业级安全等特性,同时提供智能 DBA、自动化运营、监控告警等配套设施,为客户提供完整的分布式数据库解决方案。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档