如何通过hive表在hbase中插入数据?

时间:2013-06-17 07:00:13

标签: linux ubuntu hadoop hbase hive

我可以使用此查询创建一个Hive表

CREATE TABLE hbtable(key int, value string) 
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf1:val")
TBLPROPERTIES ("hbase.table.name" = "xyz");

我使用此查询将数据插入表中但它不起作用,

insert overwrite table hbtable  select * from hbtable s where s:hive fiels="value"

如何通过Hive表将值插入HBase表?

1 个答案:

答案 0 :(得分:0)

请按照以下步骤操作

Step 1 :

bin/hive --auxpath /hadoop/projects/hive-0.9.0/lib/hive-hbase-handler-0.9.0.jar,/hadoop/projects/hive-0.9.0/lib/hbase-0.92.0.jar,/hadoop/projects/hive-0.9.0/lib/zookeeper-3.3.4.jar,/hadoop/projects/hive-0.9.0/lib/guava-r09.jar -hiveconf hbase.master=localhost:60000
STep 2 :
hive> CREATE TABLE hbase_table_1(key int, value string) 
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf1:val")
TBLPROPERTIES ("hbase.table.name" = "xyz");

Step 3 :
hive> INSERT OVERWRITE TABLE hbase_table_1 SELECT * FROM xyz WHERE key=1;

注意:我在一个Ubuntu盒子上运行hive-0.9.0和hbase-0.94.4。