HBASE-HIVE集成

1、准备环境apache

前提条件已经安装好了hbasehiveapp

检测hive/lib目录下是否含有:hive-hbase-handler-版本.jar(经过此文件和hbase通讯)oop

 

2、拷贝文件url

  进入hbaselib目录下,拷贝以下文件到:hivelib目录下spa

 hbase-client-0.98.0-hadoop2.jarserver

 hbase-common-0.98.0-hadoop2-tests.jarip

 hbase-common-0.98.0-hadoop2.jarhadoop

 hbase-protocol-0.98.0-hadoop2.jarstring

 hbase-server-0.98.0-hadoop2.jartable

 htrace-core-2.04.jar

启动hive,以上整合完成

 

3、假定Hbase中已经存在以下表:

   表名:testTable

   列簇:f

   列:ip

   列:url

  须要在hive中建立一个外部表,指向hbase

  语句以下:

  CREATE EXTERNAL TABLE log2 (key String ,url string,ip string)

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

WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,f:url,f:ip")

TBLPROPERTIES("hbase.table.name" = "log");

 

4、解释:

Log2: 表示hive的外部表名字

key 必须有

在建立hive/hbase相关联的表时,hbase表结构默认会有一个字段key,若是没有一个显示的字段'key'那么在建立表的进修,会本身建立,这样hive对应的表就会出现问题,因此在hive对应的表里必定要加上key这个字段,为了不这个问题,在hbase表结构里能够显示的添加'key'字段,这样不容易出问题。

Hbase.columns.mapping表示和hbase的列作映射

5、验证

 hbase中插入数据

 hive中执行查询,可查询数据

相关文章
相关标签/搜索