首页 > 代码库 > hive和Hbase整合
hive和Hbase整合
本文部分来源:http://www.it165.net/admin/html/201406/3239.html
https://cwiki.apache.org/confluence/display/Hive/HBaseIntegration
创建 表:hbase_hive_1
REATE TABLE hbase_hive_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");
创建有分区的表:hbase_hive_2
CREATE TABLE hbase_hive_2(key int, value string) partitioned by (day string) STORED BY ‘org.apache.hadoop.hive.hbase.HBaseStorageHandler‘ WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf1:val")TBLPROPERTIES ("hbase.table.name" = "xyz2");
创建表pokes:
create table pokes(foo int,bar string) row format delimited fields terminated by ‘,‘;
hivedata:101, zhanggsan1001, lisi 102, wangwu
load data local inpath ‘/out/hivedata‘ overwrite into table pokes;
使用sql导入hbase_table_1
SET hive.hbase.bulk=true;insert overwrite table hbase_hive_1 select * from pokes;
导入有分区的表
insert overwrite table hbase_hive_2 partition (day=‘2014-07-29‘) select * from pokes;
执行:
insert overwrite table hbase_hive_1 select * from pokes;
出现错误异常如下:
Task with the most failures(4): -----Task ID: task_1406541025007_0008_m_000000URL: http://master:8088/taskdetails.jsp?jobid=job_1406541025007_0008&tipid=task_1406541025007_0008_m_000000-----Diagnostic Messages for this Task:Container [pid=9545,containerID=container_1406541025007_0008_01_000005] is running beyond virtual memory limits. Current usage: 263.0 MB of 1 GB physical
memory used; 3.6 GB of 2.1 GB virtual memory used. Killing container.Dump of the process-tree for container_1406541025007_0008_01_000005 : |- PID PPID PGRPID SESSID CMD_NAME USER_MODE_TIME(MILLIS) SYSTEM_TIME(MILLIS) VMEM_USAGE(BYTES) RSSMEM_USAGE(PAGES) FULL_CMD_LINE |- 9545 2012 9545 9545 (java) 598 19 3909980160 67320 /home/hadoop/jdk1.7.0_51/bin/java -Djava.net.preferIPv4Stack=true
-Dhadoop.metrics.log.level=WARN
-Xmx3072m -Djava.io.tmpdir=/data/tmp/nm-local-dir/usercache/hadoop/appcache/application_1406541025007_0008/
container_1406541025007_0008_01_000005/tmp -Dlog4j
.configuration=container-log4j.properties -Dyarn.app.mapreduce.container.log.dir=/home/hadoop/hadoop-2.0.0-cdh4.5.0/
logs/userlogs/application_1406541025007_0008
/container_1406541025007_0008_01_000005 -Dyarn.app.mapreduce.container.log.filesize=0 -Dhadoop.root.logger=INFO,CLA org.apache.hadoop.mapred.YarnChild
192.168.1.153 52225 attempt_1406541025007_0008_m_000000_3 5
异常解决办法:
复制hbase/conf下的hbase-site.xml文件到所有hadoop节点的hadoop/conf下
hive> INSERT OVERWRITE TABLE hbase_hive_1 SELECT * FROM pokes; 2014-07-29 13:40:46,601 Stage-0 map = 0%, reduce = 0%2014-07-29 13:40:52,862 Stage-0 map = 100%, reduce = 0%, Cumulative CPU 1.92 secJob 0: Map: 1 Cumulative CPU: 1.92 sec HDFS Read: 244 HDFS Write: 0 SUCCESSTotal MapReduce CPU Time Spent: 1 seconds 920 msecOKTime taken: 12.742 secondshive> select * from hbase_hive_1; OK1001 lisi 101 zhanggsan102 wangwuTime taken: 0.135 seconds
查询hbase:
hbase(main):023:0> scan ‘xyz‘
ROW COLUMN+CELL
1001 column=cf1:val, timestamp=1406612452333, value= http://www.mamicode.com/lisi/x09
101 column=cf1:val, timestamp=1406612452333, value= http://www.mamicode.com/zhanggsan
102 column=cf1:val, timestamp=1406612452333, value= http://www.mamicode.com/wangwu
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。