Hive表数据导入到Hbase

修改hive的配置文件hive-site.xml,增加:

 

<property>
   <name>hive.aux.jars.path</name>
      <value>file:///home/hadoop/hive-0.9.0/lib/hive-hbase-handler-0.9.0.jar,file:///home/hadoop/hive-0.9.0/lib/hbase-0.92.0.jar,file:home/hadoop/hive-0.9.0/lib/zookeeper-3.4.3.jar</value>
 </property>


启动hive,在hive命令行执行:

CREATE TABLE test1
(a string,
b string,
c string,
d string )
 STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' 
WITH SERDEPROPERTIES
("hbase.columns.mapping" = ":key,info:b,info:c,info:d") 
TBLPROPERTIES ("hbase.table.name"="test1");


执行后会在创建hive中创建test1表有a,b,c,d四个列,hbase也创建了一张test1,rowkey是key,info列族,列是b,c,d,并建立的关系

将hive数据导入到HBase中

insert into table test1 select a as key,b,c,d from test1

 

 

注意在建立关系的时候rowkey一定要写key,写其他可能会报错:

FAILED: Error in metadata: java.lang.RuntimeException: MetaException(message:org.apache.hadoop.hive.serde2.SerDeException org.apache.hadoop.hive.hbase.HBaseSerDe: columns has 4 elements while hbase.columns.mapping has 5 elements (counting the key if implicit))
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask

 

这里的hive和hbase都是比较古老的版本hive是0.9,hbase是0.94,高版本还没做测试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值