您的位置:首页 > 运维架构

2016.6.14 hive与hbase的整合使用

2016-06-14 11:20 351 查看

原文地址

hive为什么要与hbase整合

hive与hbase整合指导

hadoop、hive、hibase版本对应关系

学习笔记 hive为什么要与hbase整合

hive为什么要与hbase整合

进度:已看完,能理解。

操作:没有实际操作过,所以优点和缺点没有深刻体会。

1.hbase目前支持的功能

(1)通过SQL语句来查询hbase中的表数据

(2)从oracle数据库导入表数据到hbase

2.hive目前支持的功能

内容较多,只列出部分,通过下面我们可以看出hive对于sql的支持,有强大的功能。我们不需要写过多的自定义函数,亦能实现一些复杂的查询等。

(1)关系运算

(2)数学运算

(3)逻辑运算

(4)数值计算

(5)日期函数

(6)条件函数

(7)字符串函数

(8)集合统计函数

(9)复合类型构建操作

(10)复杂类型访问操作

(11)复杂类型长度统计函数

3.整合后的效果

整合后,我们就可以通过Hive,读/写HBase的表了。

4.hive与hbase整合的优缺点

(1)优点

Hive方便地提供了H**重点内容ive QL的接口来简化MapReduce的使用,而HBase提供了低延迟的数据库访问。如果两者结合,可以利用MapReduce的优势针对HBase存储的大量内容进行离线的计算和分析。**

操作方便,hive提供了大量系统功能。

比如在Hbase中要查询一个名字按姓名分组统计的SQL,普通SQL语句如下:

select name,count(name) from table1 where group by name;

但是如果在hbase中的话,那么这样的需求没有好的实现办法,只能去写MR操作了。

但是在hive中可以直接运行一个SQL:select name,count(name) from table1 where group by name;就能得到结果了。

(2)缺点

性能的损失,hive有这样的功能, 他支持通过类似sql语句的语法来操作hbase中的数据, 但是速度慢

但是慢的理由还没有get~

ps:再次强调

hive是逻辑表,没有具体的数据存储的,通过M/R去hdfs上读取数据。

hbase是物理表,负责数据的存储,有自己的存储方式及存储优化,数据最后存放在hdfs文件系统上面。

学习笔记 hive与hbase整合指导

hive与hbase整合指导

本文基于Hive执行HDFS批量向HBase导入数据,讲解Hive与HBase的整合问题。

进度:大致浏览,细节未深究。

操作:未实际操作。

1.版本说明

hive 0.10.0

hbase 0.94.0

hadoop 1.0.1

2.配置*(这里只大致讲解流程,细节不深究,等到具体配置时才深究)*

step1: 创建配置文件  

cp conf/hive-default.xml.template hive-default.xml  cp conf/hive-default.xml.template hive-site.xml  

step2:修改配置文件  

基于hive-default.xml.template进行拷贝复制的hive-site.xml文件有问题,主要集中在标签不配对的情况,需要根据错误提示进行修改。

step3:新增配置属性

hive.aux.jars.path

step4:拷贝Jar包到Hive/lib目录  

hbase-0.94.0.jar,zookeeper-3.4.3.jar

3.测试脚本-创建hbase能识别的数据表

4.异常解决
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hadoop hive