Hive与Hbase整合
Hive与Hbase整合
1.文档
2.拷贝jar文件
2.1.把Hbase的lib目录下面的jar文件全部拷贝到Hive的lib目录下面
cd /home/hbase/lib
cp ./* /home/hive/lib
2.2.把Hive的lib目录下面的hive-hbase-handler-0.13.1.jar拷贝到Hbase的lib目录下面
cp /home/hive/lib/hive-hbase-handler-0.13.1.jar /home/hbase/lib/
3.修改Hive/conf目录下面的配置文件
cd /home/hive/conf
vi hive-site.xml <!-- Hbase zookeeper quorum -->
<property>
<name>hbase.zookeeper.quorum</name>
<value>node1,node2,node3</value>
</property>
4.在Hbase中创建表
--在Hbase中创建表
create 'hbase_to_hive_t_user', 'cf_user_info' hbase(main):010:0> desc 'hbase_to_hive_t_user'
Table hbase_to_hive_t_user is ENABLED
COLUMN FAMILIES DESCRIPTION
{NAME => 'cf_user_info', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW', REPLICATION_S
COPE => '', VERSIONS => '', COMPRESSION => 'NONE', MIN_VERSIONS => '', TTL => 'FOREVER',
KEEP_DELETED_CELLS => 'FALSE', BLOCKSIZE => '', IN_MEMORY => 'false', BLOCKCACHE => '
true'}
1 row(s) in 0.0650 seconds
5.在Hbase表中插入数据
--插入数据
put 'hbase_to_hive_t_user', '', 'cf_user_info:name','Tom'
put 'hbase_to_hive_t_user', '', 'cf_user_info:age',24
put 'hbase_to_hive_t_user', '', 'cf_user_info:name','John'
put 'hbase_to_hive_t_user', '', 'cf_user_info:age',18
put 'hbase_to_hive_t_user', '', 'cf_user_info:name','Steven'
put 'hbase_to_hive_t_user', '', 'cf_user_info:age',38 scan 'hbase_to_hive_t_user'
hbase(main):009:0> scan 'hbase_to_hive_t_user'
ROW COLUMN+CELL
1 column=cf_user_info:age, timestamp=1546754368046, value=24
1 column=cf_user_info:name, timestamp=1546754367972, value=Tom
2 column=cf_user_info:age, timestamp=1546754368166, value=18
2 column=cf_user_info:name, timestamp=1546754368103, value=John
3 column=cf_user_info:age, timestamp=1546754370447, value=38
3 column=cf_user_info:name, timestamp=1546754368211, value=Steven
3 row(s) in 0.1600 seconds
6.在Hive中创建数据库表关联Hbase里面的表
--如果你想要Hive去访问Hbase中已经存在的表,你可以创建外部表(CREATE EXTERNAL TABLE) CREATE EXTERNAL TABLE hive_access_hbase_table_t_user (key string, name string, age int)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf_user_info:name,cf_user_info:age")
TBLPROPERTIES ("hbase.table.name" = "hbase_to_hive_t_user");
6.1.在Hive中查询Hbase表里的数据
select * from hive_access_hbase_table_t_user; hive> select * from hive_access_hbase_table_t_user;
OK
1 Tom 24
2 John 18
3 Steven 38
Time taken: 0.325 seconds, Fetched: 3 row(s)
7.Reference
https://blog.csdn.net/qq_33689414/article/details/80328665
https://blog.csdn.net/aaronhadoop/article/details/28398157
========================================================
More reading,and english is important.
I'm Hongten

大哥哥大姐姐,觉得有用打赏点哦!你的支持是我最大的动力。谢谢。
Hongten博客排名在100名以内。粉丝过千。
Hongten出品,必是精品。
E | hongtenzone@foxmail.com B | http://www.cnblogs.com/hongten
========================================================
Hive与Hbase整合的更多相关文章
- Hive(五):hive与hbase整合
配置 hive 与 hbase 整合的目的是利用 HQL 语法实现对 hbase 数据库的增删改查操作,基本原理就是利用两者本身对外的API接口互相进行通信,两者通信主要是依靠hive_hbase-h ...
- Hadoop Hive与Hbase整合+thrift
Hadoop Hive与Hbase整合+thrift 1. 简介 Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句 ...
- 大数据工具篇之Hive与HBase整合完整教程
大数据工具篇之Hive与HBase整合完整教程 一.引言 最近的一次培训,用户特意提到Hadoop环境下HDFS中存储的文件如何才能导入到HBase,关于这部分基于HBase Java API的写入方 ...
- Hive和Hbase整合
Hive只支持insert和delete操作,并不支持update操作,所以无法实施更新hive里的数据,而HBASE正好弥补了这一点,所以在某些场景下需要将hive和hbase整合起来一起使用. 整 ...
- Hive和HBase整合用户指南
本文讲解的Hive和HBase整合意思是使用Hive读取Hbase中的数据.我们可以使用HQL语句在HBase表上进行查询.插入操作:甚至是进行Join和Union等复杂查询.此功能是从Hive 0. ...
- hive与hbase整合过程
实现目标 Hive可以实时查询Hbase中的数据. hive中的表插入数据会同步更新到hbase对应的表中. 可以将hbase中不同的表中的列通过 left 或 inner join 方式映射到hiv ...
- hive和hbase整合的原因和原理
为什么要进行hive和hbase的整合? hive是高延迟.结构化和面向分析的: hbase是低延迟.非结构化和面向编程的. Hive集成Hbase就是为了使用hbase的一些特性.或者说是中和它们的 ...
- Hive篇---Hive与Hbase整合
一.前述 Hive会经常和Hbase结合使用,把Hbase作为Hive的存储路径,所以Hive整合Hbase尤其重要. 二.具体步骤 hive和hbase同步https://cwiki.apache ...
- hive存储处理器(StorageHandlers)以及hive与hbase整合
此篇文章基于hive官方英文文档翻译,有些不好理解的地方加入了我个人的理解,官方的英文地址为: 1.https://cwiki.apache.org/confluence/display/Hive/S ...
随机推荐
- 第31月第10天 tableview头部空白 Other Linker Flags rtmp
1.ios10 tableview头部空白 if (@available(iOS 11.0, *)) { self.tableView.contentInsetAdjustmentBehavior = ...
- java 中类的方法
object类,即所有类的父类, getClass() 返回对象执行时的Class实例, getClass().getName();// 返回类的名字 toString();// equals();/ ...
- mysql 8.0~MGR多成员读一致性
一 背景:当在读节点多成员查询时可能导致数据不一致 二 三种场景 1 读多写少 AFTER 2 读写相当 AFTER_AND_BEFORE 3 读少写多 BEFORE三 数据不一致 ...
- 微信小程序开发之自定义菜单tabbar
做这个 遇到问题比较多,特此记录以便查看,直接上代码: 一.app.js 控制原有菜单隐藏.启用新菜单.菜单列表,集中在这里控制 hideTabBar这个很关键,解决苹果6S导致的双导航栏:原文htt ...
- 【interview——Ali】project interview_18 summer
完全没有准备的一次面试……意外 两部分:Word2vec + 中位数 (还有聊对科研的想法和自己研究能力的评价? word2vec //解释模型 原本是one-hot,存在缺点:稀疏和无法表现语义,词 ...
- JUC--闭锁 CountDownLatch
CountDownLatch是一个同步辅助类,在完成一组正在其他线程中执行的操作之前,允许一个或者多个线程一直等待. 闭锁可以延迟线程的进度直到其到达终止状态,可以确保某些活动知道其他活动都完成才继续 ...
- 如何用java实现一个p2p种子搜索(1)-概念
前言 说句大实话,网上介绍怎么用java实现p2p种子的搜索这种资料不是特别多,大部分都是python的,用python的话就会简单很多,它里面有很多简单方便的包,libtorrent等等,当然你用这 ...
- IIS+nginx反向代理 负载均衡
本文没有过多的讲述,只讲述重点地方.由这两个转自的文章进行中和 1.nginx+iis实现负载均衡(这篇文章主要是有第2篇文章的工具) 2.nginx+iis使用(这篇文章讲得很详细,配置文件直接复制 ...
- matplotlib 中的柱状图
def drawBar(): pyplot.bar(range(5),[100,200,300,400,400]) pyplot.xticks(range(5),['A','B','C','D','E ...
- 面向对象(OOP)基本概念
面向对象(OOP)基本概念 面向对象编程 —— Object Oriented Programming 简写 OOP 目标 了解 面向对象 基本概念 01. 面向对象基本概念 我们之前学习的编程方式就 ...