实验环境准备 

Hive-2.3.3

Hbase-1.3.1

launcher start

start-dfs.sh

start-yarn.sh

zkServer.sh start

(3)

./mr-jobhistory-daemon.sh start historyserver

(hadoop/sbin)

bin/start-hbase.sh

实验原理:

Hive与HBase整合的实现是利用两者本身对外的API接口互相通信来完成的,其具体工作交由Hive的lib目录中的hive-hbase-handler-*.jar工具类来实现

通信原理:

整合的意义:

(一)通过Hive把数据加载到HBase中,数据源可以是文件也可以是Hive中的表。

(二)通过整合,让HBase支持JOIN、GROUP等SQL查询语法。

(三)通过整合,不仅可完成HBase的数据实时查询,也可以使用Hive查询HBase中的数据完成复杂的数据分析。

(四)通过结合,可以设计一个高速写入,后面接入实时分析的海量数据分析系统。

实验步骤:

  1. 修改hive-site.xml文件以及hive-env.sh文件配置(仅当hbase为集群模式时)

hive-site.xml:

<property>

    <name>hive.zookeeper.quorum</name>

    <value>node01,node02,node03</value>

</property>

<property>

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

    <value>node01,node02,node03</value>

</property>

<property>

    <name>hive.aux.jars.path</name>

    <value>file:///opt/software/hive/lib/hive-hbase-handler-2.3.3.jar,file:///opt/software/hive/lib/zoo

keeper-3.4.10.jar,file:///opt/software/hive/lib/hbase-client-1.3.1.jar,file:///opt/software/hive/lib/hbase-common-1.3.1-tests.jar,file:///opt/software/hive/lib/hbase-server-1.3.1.jar,file:///opt/software/hive/lib/hbase-common-1.3.1.jar,file:///opt/software/hive/lib/hbase-protocol-1.3.1.jar,file:///opt/software/hive/lib/htrace-core-3.1.0-incubating.jar

    </value>

</property>

hive-env.sh:

 export HBASE_HOME=/opt/software/hbase-1.3.1

2. 将hbase lib目录下的所有文件复制到hive lib目录中

注意:先删除hive/lib目录下hbase开头的jar包

/opt/software/hive/lib目录下:

rm -rf hbase-*

/opt/software/hbase/lib目录下:

cp /opt/software/hbase-1.3.1/lib/* /opt/software/hive-2.3.3/lib/

3. 在hive中创建映射表,创建完成后在hbase中查看是否同时在hbase中也创建成功(创建之前要先启动hbase)

hive

create table hbase_score(id int,name string,score int) stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' with serdeproperties("hbase.columns.mapping" = "cf:name,cf:score") tblproperties("hbase.table.name" = "hbase_score");

create table hive_hbase_test(id int,name string) stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' with serdeproperties("hbase.columns.mapping"=":key,cf1:name") tblproperties("hbase.table.name"="hive_hbase_test");

hbae shell

list

4. 导入数据测试:

Hive 导入数据,Hbase查看数据:

1vi hive_hbase.txt

2)在hive中创表,导入数据:

create table test(id int,name string) row format delimited fields terminated by ',';

load data local inpath "/usr/datadir/hive_hbase.txt" into table test;

select * from test;

3)将hive的test表中的数据加载到hive_hbase_test表

insert overwrite table hive_hbase_test select * from test;

通过Hbase put添加数据,Hive查看添加数据

1)在hbase shell中对表hive_hbase_test添加数据

put 'hive_hbase_test','4','cf1:name','mipeng'

2)在hive中查看数据是否添加进来:

select * from hive_hbase_test;

注意事项:

整合完成之后,如果在hive当中创建的为内部表,那么在hive中删除该表时,hbase上对应的表也会删除;如果在hive当中创建的为外部表,那么在hive中删除该表时,不会影响hbase。

补充:

hive中创建外部映射表步骤:

  1. 在hbase中创建对应名称、对应列簇的表:

create 'hbase_score1','cf'

  1. 在hive中创建外部表:

create external table hbase_score1(id int,name string,score int) stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' with serdeproperties("hbase.columns.mapping" = "cf:name,cf:score") tblproperties("hbase.table.name" = "hbase_score1");

  1. 在hive中向外部表内导入数据:(参考导入数据测试)

在hbase中添加数据:(参考导入数据测试)

hive整合hbase相关推荐

  1. hive整合HBase:HBase table xsg:test05 doesn't exist while the table is declared as an external table

    版本 虚拟机centOS7 hive 1.2.1 hbase 1.2.6 1,在hive-site.xml中添加配置 <property><name>hbase.zookeep ...

  2. Hive 整合Hbase(来自学习资料--博学谷)

    1.摘要 Hive提供了与HBase的集成,使得能够在HBase表上使用HQL语句进行查询 插入操作以及进行Join和Union等复杂查询.同时也可以将hive表中的数据映射到Hbase中. 2.应用 ...

  3. Hive 整合 HBase

    作者 | 广   责编 | 张文 头图 | CSDN 下载自视觉中国 HBase 虽然可以存储数亿或数十亿行数据,但是对于数据分析来说不太友好,它只提供了简单的基于 Key 值的快速查询能力,没法进行 ...

  4. Hive整合HBase,操作HBase表

    Hive over HBase原理 Hive与HBase利用两者本身对外的API来实现整合,主要是靠HBaseStorageHandler进行通信,利用 HBaseStorageHandler,Hiv ...

  5. 2.4-2.5、Hive整合(整合Spark、整合Hbase)、连接方式Cli、HiveServer和hivemetastore、Squirrel SQL Client等

    2.4其它整合 2.4.1Hive整合Spark Spark整合hive,需要将hive_home下的conf下的hive_site.xml放到spark_home下的conf目录下.(3台服务器都做 ...

  6. 【华为云技术分享】如何整合hive和hbase

    引言  为什么要集成Hive和HBase Hive和Hbase在大数据架构中处在不同位置,Hive是一个构建在Hadoop基础之上的数据仓库,主要解决分布式存储的大数据处理和计算问题,Hive提供了类 ...

  7. HBase:Hive与HBase的整合

    hive与HBase的整合 hive与我们的HBase各有千秋,各自有着不同的功能,但是归根接地,hive与hbase的数据最终都是存储在hdfs上面的,一般的我们为了存储磁盘的空间,不会将一份数据存 ...

  8. hive安装及整合hbase

    hive安装及整合hbase (1). 上传hive安装包并解压 tar -zxvf apache-hive-3.1.3-bin.tar.gz -C /export/server/ (2). 配置hi ...

  9. hive整合phoenix

    2019独角兽企业重金招聘Python工程师标准>>> 版本: hbase-0.98.21-hadoop2-bin.tar.gz phoenix-4.8.0-HBase-0.98-b ...

最新文章

  1. 53个Python库,你必须要试试
  2. 【连载】高效人士的116个IT秘诀(第2版)——秘诀25快速记录你的工作日志
  3. 最多两次股票交易-Best Time to Buy and Sell Stock III
  4. boost::mpl模块实现max_element相关的测试程序
  5. 基于水色图像的水质评价
  6. OrganicsDelivery总结
  7. java怎么定义范围_java – Dagger自定义范围,怎么办?
  8. Windows Moblie 笔迹图板开发
  9. 【2017级面向对象程序设计】作业二
  10. linux mysql优化_Linux上跑MySQL优化技巧
  11. Win11系统开启控制面板会闪退怎么解决?
  12. 数学符号的读音——那些你总是记不住的数学符号的读音(α,β,γ,δ,ε,λ,ζ,η,θ,ξ,σ,φ,ψ,ω...)
  13. 论文阅读笔记----《Explaining Answers with Entailment Trees》
  14. 快速简单对接【短信验证码】API接口
  15. csrf漏洞防御方案_CSRF原理实战及防御手段
  16. 字符串操作函数的实现【详解】
  17. MyBatis实现中间表关联查询
  18. 4十4十4写成乘法算式_乘法口诀和乘法算式怎么写
  19. 新的 OpenWrt RCE 漏洞曝光,影响数百万台网络设备
  20. js中特殊字符以及转义

热门文章

  1. Python 算法之 求素数、质数
  2. 2.5 浮点数的表示及运算(浮点数乘除运算)
  3. ESP8266-Arduino编程实例-TEA5767收音机模块驱动
  4. FLIP动画实现思路
  5. 绘制彩色图的颜色直方图
  6. opencv多摄像头测试
  7. Nginx1.10.1安装配置
  8. 概率分布函数和概率密度函数
  9. 阿里web前端面试题到底有多可怕?看完就全明白了!
  10. Linux服务器安装mysql数据库,配置linux防火墙策略