hive 表关联hbase表 命令和总结

    在hive shell中创建关联表的命令如下:

CREATE TABLE hive表名(rowkey date-type, value1 date-type, value2 date-type, value3 date-type)    
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'  
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":rowkey,列族名:列名,列族名:列名,列族名:列名")
TBLPROPERTIES("hbase.table.name" = "hbase表名");      

                                                                                                                                                                                                 创建后的表若导入数据,不能直接从hive外面直接导入文件数据到关联表中,需要通过中间表用insert命令导入关联表。


还可以直接对hbase中已经存在的表进行关联,命令基本一样 只有一个地方有区别:

CREATE TABLE hive表名(rowkey date-type, value1 date-type, value2 date-type, value3 date-type)    
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'  
WITH SERDEPROPERTIES ("hbase.columns.mapping" = "rowkey,列族名:列名,列族名:列名,列族名:列名")
TBLPROPERTIES("hbase.table.name" = "hbase表名");      

以上字段名要 “rowkey,列族名:列名,列族名:列名,列族名:列名 ”要对应,rowkey就是行键 前面对比上面的少了一个:号这就是区别。

以上就是代码就创建好了hive关联表,当hive上增加记录时,对应hbase表也会自动添加数据。

hbase表添加数据时,对应的hive表也会跟着添加记录。

表的删除注意事项:

1:第一种创建方法,当先删除hive上的表时,hbase也就不再了。 如果先删除hbase上面的表时,hive上的表show tables;还会显示存在,但是如果查找里面的数据时是没有信息的会报错,输入drop table 表名;后也会报错说不存在该表 ,但是这时候show tables;的时候该表已经消失了。

2:第二种创建方法,当删除hive上的表时,hbase上的关联表没有受到影响,如果先删除hbase上的表时,hive上的表也就会不在了。 



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值