Hive导入数据到HBase,再与Phoenix映射同步

1. 创建HBase 表

create 'hbase_test','user'

2. 插入数据

put 'hbase_test','111','user:name','jack'
put 'hbase_test','111','user:age','18'

查看HBase
1802007-20190922180344944-249445945.png

3. 创建Hive外部表关联Hbase

create external table hbase_test1(
    id int,
    name string,
    age int
)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' 
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,user:name,user:age") 
TBLPROPERTIES("hbase.table.name" = "hbase_test");

查看Hive
1802007-20190922181440932-2016006902.png

4.再插入数据到HBase,查询验证

1802007-20190922181735734-806865148.png

查询Hive
1802007-20190922181817364-568802738.png

5. 插入数据到Hive表,查询验证

insert into hbase_test(id,name,age) values(333,'mary',25);

1802007-20190922182206081-1358123361.png

查询Hive
1802007-20190922182228719-1340994114.png
查询HBase
1802007-20190922182256234-140643589.png

6. 在Phoenix中建立相同的表名以实现与HBase表的映射

create table if not exists "hbase_test"(id varchar primary key, "user"."name" varchar, "user"."age" varchar);

注意:

  1. Phoneix中创建的表与HBase中映射的表名要相同
  2. phoneix中创建表的字段名与与HBase中映射表的字段名要相同(注意大小写)

查询Phoenix
1802007-20190922190024464-1243922099.png

7. 插入数据到Phoenix,查询验证

upsert into "hbase_test"(id,"name","age") values('444','haha','33');

查询Phoenix
1802007-20190922190324524-577437800.png
查询HBase
1802007-20190922190401177-1070624483.png
查询Hive
1802007-20190922190425195-159032844.png

转载于:https://www.cnblogs.com/wuning/p/11568719.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值