4.hive整合hbase

目标:能通过hive访问hbase,实现操作简化

查看了网上一些博文,主要通过博文:wulantian的博文进行整理的

1,在创建表时与hbase进行对应

create table 
    hbase_tb_user(
        id int,
        name String,
        remark String
    )
stored by 
    'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES 
    ("hbase.columns.mapping" = ":key,data:user,data:password,data:remark")
TBLPROPERTIES ("hbase.table.name" = "tb_user");
执行以上操作,可在hive创建表hbase_tb_user,在hbase创建tb_user表(如果hbase中已经存在tb_user则提示表以存在),并建立hive表和hbase表的对应关系。

以上说过在hbase中存在对应表时,会报表存在错误,那么怎样对应在hbase中已经存在的表了,悄悄告诉你们一个方法,只要在hive建表语句中加入关键字‘external’就可以了,如下:

create external table 
    hbase_tb_user(
        id int,
        name String,
        remark String
    )
stored by 
    'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES 
    ("hbase.columns.mapping" = ":key,data:user,data:password,data:remark")
TBLPROPERTIES ("hbase.table.name" = "tb_user");
这样就会和hbase中已存在的表做对应。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值