天天看點

hbase java批量插入_Hive 實作HBase 資料批量插入

HBase 資料的插入可以使用Java API 來寫Java 程式逐條倒入,但是不是很友善。利用Hive自帶的一個Jar包,可以建立Hive和HBase的映射關系 利用Hive 的insert可以将批量數

據導入到HBase中,還可以通過 Hql 語句進行查詢。

具體的配置方法如下:

1、把hive-hbase-handler-0.9.0-cdh4.1.2.jar (CDH5 預設在 /usr/lib/hive/lib下)  cp到hbase/lib 下 (CDH5 預設在 /usr/lib/hbase/lib下)

2、配置hive-site.xml (CDH5 預設在 /etc/hive/conf 下)

hive.aux.jars.path

file:///usr/lib/hbase/lib/hive-hbase-handler-0.12.0-cdh5.0.0.jar,file:///usr/lib/hbase/hbase.jar,file:///usr/lib/hbase/lib/zookeeper.jar

利用下面的語句,可以建立一個Hive表和一個HBase 表

CREATE TABLE employee_hbase

(key string,age int,sex string)

STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'

WITH SERDEPROPERTIES

("hbase.columns.mapping" = ":key,info:age,info:sex") TBLPROPERTIES ("hbase.table.name"="employee");

其中 Hive 表名:employee_hbase 有 key,age,sex 三列

HBase表名:employee_hbase 有 rowkey = key 列族 info 列 age sex

名稱一一對應

利用 insert into table employee_hbase select name as key,age,sex from employee;可以将已有Hive 資料導入到HBase中