将数据从hbase导入到hive

一、选定hbase上的一个表

选定test0721表

hbase(main):001:0> list
TABLE
SYSTEM.CATALOG
SYSTEM.FUNCTION
SYSTEM.LOG
SYSTEM.MUTEX
SYSTEM.SEQUENCE
SYSTEM.STATS
test0721
7 row(s) in 0.1500 seconds

=> ["SYSTEM.CATALOG", "SYSTEM.FUNCTION", "SYSTEM.LOG", "SYSTEM.MUTEX", "SYSTEM.SEQUENCE", "SYSTEM.STATS", "test0721"]
hbase(main):002:0> scan 'test0721'
ROW                   COLUMN+CELL
 0001                 column=info:age, timestamp=1595342472810, value=30
 0001                 column=info:name, timestamp=1595342436441, value=zhangsan
 0001                 column=info:sex, timestamp=1595342481869, value=male
 0001                 column=like:food, timestamp=1595342451656, value=apple
 0001                 column=like:sport, timestamp=1595342461471, value=running
1 row(s) in 0.1410 seconds

hbase(main):003:0>

二、在hive上创建映射表

create EXTERNAL table hbase_test0721_2(       //必须是外部表,否则会报错
Row_key String,                               //第一个字段随便取个名字,理解为主键
age String,                                   //以下字段需要与hbase中的表字段顺序相对应
name String,
sex String,
food String,
sport String
)
stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'//固定写法
with serdeproperties("hbase.columns.mapping"=":key,info:age,info:name,info:sex,like:food,like:sport") //写好hbase表中对应的列簇:列名即可
tblproperties("hbase.table.name"="test0721");  //hbase中对应的表名

三、查看结果

在这里插入图片描述

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值