Hbase创建外部表

本文展示了如何在HBase中创建表并添加数据,然后通过Hive创建外部表进行映射,实现数据预览及插入。详细步骤包括创建HBase表、添加列族和数据,以及在Hive中创建外部表并关联预览数据,最后通过Hive插入数据到HBase。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.创建hbase表

创建hbase表只有一个info列族
hbase(main):003:0> create 'smart_test:test_user','info'
0 row(s) in 1.4330 seconds
=> Hbase::Table - smart_test:test_user

在列族下面添加name和age列以及列数据
hbase(main):005:0> put 'smart_test:test_user',1,'info:name','赵'
0 row(s) in 0.2800 seconds
hbase(main):006:0> put 'smart_test:test_user',1,'info:age',18
0 row(s) in 0.0170 seconds

表数据据预览
hbase(main):007:0> scan 'smart_test:test_user'
ROW                                   COLUMN+CELL                                                                                     1                                    column=info:age, timestamp=1655170432817, value=18                            1                                    column=info:name, timestamp=1655170422168, value=\xE8\xB5\xB5 

2.创建hbase的hive外部表映射hbase

2.1创建hive表映射hbase字段

CREATE EXTERNAL TABLE
    test_user
    (
        id string COMMENT 'hbase rowkey',
        name string COMMENT '姓名',
        age string COMMENT '年龄'
    )
STORED BY "org.apache.hadoop.hive.hbase.HBaseStorageHandler"
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,info:name,info:age")
TBLPROPERTIES("hbase.table.name" = "smart_test:test_user");

2.2关联后预览hbase表数据

hive> select * from test_user;
OK
1       赵      18

2.3往hive表插入数据测试

hive> insert into table test_user  select 2,  '钱',  12 union all select 3,  '孙',  19;

hbase(main):008:0> scan 'smart_test:test_user'
ROW                                   COLUMN+CELL                                                                                                
 1                                    column=info:age, timestamp=1655170432817, value=18                                                         
 1                                    column=info:name, timestamp=1655170422168, value=\xE8\xB5\xB5                                              
 2                                    column=info:age, timestamp=1655171127474, value=12                                                         
 2                                    column=info:name, timestamp=1655171127474, value=\xE9\x92\xB1                                              
 3                                    column=info:age, timestamp=1655171127474, value=199                                                        
 3                                    column=info:name, timestamp=1655171127474, value=\xE5\xAD\x99                                              
3 row(s) in 0.0350 seconds

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值