hive集成hbase相关配置

hive作为hbase的客户端,需要将hbase的相关jar包和一些配置拷贝到自己的配置中,具体如下:

hive-site.xml

<property>
  <name>hbase.zookeeper.quorum</name>

  <value>hadoop1,hadoop2,hadoop3</value>                                                                                                        </property>

jar包可以拷贝或者用软链引入

ln -s ${HBASE_HOME}/lib/hbase-hadoop-compat-0.98.6-cdh5.3.6.jar ${HIVE_HOME}/lib/hbase-hadoop-compat-0.98.6-cdh5.3.6.jar
ln -s ${HBASE_HOME}/lib/high-scale-lib-1.1.1.jar ${HIVE_HOME}/lib/high-scale-lib-1.1.1.jar
ln -s ${HBASE_HOME}/lib/hbase-hadoop2-compat-0.98.6-cdh5.3.6.jar ${HIVE_HOME}/lib/hbase-hadoop2-compat-0.98.6-cdh5.3.6.jar
ln -s ${HBASE_HOME}/lib/hbase-server-0.98.6-cdh5.3.6.jar ${HIVE_HOME}/lib/hbase-server-0.98.6-cdh5.3.6.jar
ln -s ${HBASE_HOME}/lib/hbase-common-0.98.6-cdh5.3.6.jar ${HIVE_HOME}/lib/hbase-common-0.98.6-cdh5.3.6.jar
ln -s ${HBASE_HOME}/lib/hbase-client-0.98.6-cdh5.3.6.jar ${HIVE_HOME}/lib/hbase-client-0.98.6-cdh5.3.6.jar
ln -s ${HBASE_HOME}/lib/hbase-protocol-0.98.6-cdh5.3.6.jar ${HIVE_HOME}/lib/hbase-protocol-0.98.6-cdh5.3.6.jar
ln -s ${HBASE_HOME}/lib/hbase-it-0.98.6-cdh5.3.6.jar ${HIVE_HOME}/lib/hbase-it-0.98.6-cdh5.3.6.jar
ln -s ${HBASE_HOME}/lib/htrace-core-2.04.jar ${HIVE_HOME}/lib/htrace-core-2.04.jar

创建一个数据存储在hbase上的表的方法如下:

drop table if exists test.nginx_log;
  
create table if not exists test.nginx_log( 
id int, 
ip string, 
area string, 
day string, 
time string, 
method string, 
url string, 
result int, 
size int, 
refer string 
) 
stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' 
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,info:ip,info:area,info:day,info:time,info:method,info:url,info:result,info:size,info:refer") 
TBLPROPERTIES ("hbase.table.name" = "test:nginx_log");

猜你喜欢

转载自blog.csdn.net/fanghailiang2016/article/details/80207844