前言:Hive创建关联hbase表有2种形式,第一是建立hive内表,指向Hbase,第二是建立Hive外表,引用Hbase中已经存在的一张表
- 在Hbase中创建表,创建一个表名称为
hive_hbase_test,列族名称为f的Hbase表create 'hive_hbase_test','f' - 在Hive创建外联表,关联Hbase中对应的表
create external table hive_hbase_test(
id string,
pageId string,
operationParam string
)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" =
":key,
f:pageId,
f:operationParam
")TBLPROPERTIES ("hbase.table.name"="hive_hbase_test"); -
外Hive表中插入数据,注意不能使用
load data插入数据,不然后报A non-native table cannot be used as target for LOAD,需要使用insert intoinsert into hive_hbase_test select id,page_id,operation_param from test_txt; -
查询HIVE中的数据
-
查询Hbase中的数据
-
清理数据,不能使用hive的
truncate数据,因为数据的存储是有Hbase来管理的,所以可以使用