- 浏览: 2188637 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (682)
- 软件思想 (7)
- Lucene(修真篇) (17)
- Lucene(仙界篇) (20)
- Lucene(神界篇) (11)
- Solr (48)
- Hadoop (77)
- Spark (38)
- Hbase (26)
- Hive (19)
- Pig (25)
- ELK (64)
- Zookeeper (12)
- JAVA (119)
- Linux (59)
- 多线程 (8)
- Nutch (5)
- JAVA EE (21)
- Oracle (7)
- Python (32)
- Xml (5)
- Gson (1)
- Cygwin (1)
- JavaScript (4)
- MySQL (9)
- Lucene/Solr(转) (5)
- 缓存 (2)
- Github/Git (1)
- 开源爬虫 (1)
- Hadoop运维 (7)
- shell命令 (9)
- 生活感悟 (42)
- shell编程 (23)
- Scala (11)
- MongoDB (3)
- docker (2)
- Nodejs (3)
- Neo4j (5)
- storm (3)
- opencv (1)
最新评论
-
qindongliang1922:
粟谷_sugu 写道不太理解“分词字段存储docvalue是没 ...
浅谈Lucene中的DocValues -
粟谷_sugu:
不太理解“分词字段存储docvalue是没有意义的”,这句话, ...
浅谈Lucene中的DocValues -
yin_bp:
高性能elasticsearch ORM开发库使用文档http ...
为什么说Elasticsearch搜索是近实时的? -
hackWang:
请问博主,有用solr做电商的搜索项目?
Solr中Group和Facet的用法 -
章司nana:
遇到的问题同楼上 为什么会返回null
Lucene4.3开发之第八步之渡劫初期(八)
本篇,散仙主要讲的是使用Hive如何和Hbase集成,Hbase和Hive的底层存储都在HDFS上,都是hadoop生态系统中的重要一员,所以他们之间有着很亲密的联系,可以相互转换与操作。
hadoop,hbase和hive的搭建就不重复说了,不会的朋友,可以看散仙前面的博客,下面直接进入重点,关于hive集成hbase这一块,网上资料不算多,有的版本比较旧,散仙这里使用的版本是hive0.12和hbase0.96.2。
hive集成hbase的方式其实很简单,就是把Hbase的几个jar包,拷贝到hive的lib目录下即可截图如下:
上面的几个包放进Hive的lib中之后,我们需要配置在hive-site.xml里面配置下Hbase的zk地址,便于Hive连接Hbase使用,添加配置如下:
下面可以进行测试,我们直接把Hbase里的一张表,转成我们的Hive表,Hive启动前,首先要把Hadoop和Hbase启动起来,然后启动Hive,启动完进程如下所示:
先在hbase里建一张表,并添加列簇,和列数据如下:
在Hive里,执行如下语句,进行关联建表:
如果不报错,就证明,集成成功,如果出现错误,一般都是hbase的某个jar包缺少造成,我们根据提示添加到hive的lib里即可,然后重启hive的的shell客户端。
建表成功后,查询如下:
至此,我们的Hive集成Hbase就成功了,关联成功后,我们就可以对数据进行分析了,需要注意的是,我们关联过的hbase表,如果在Hbase里面删除了这个表,那么在Hive里面再次查询,就会报错,如果删除了Hive里面的表,则对Hbase没有影响。另外一点需要注意的是,使用Hive关联Hbase的建的表,是一个内部表,所以需要在Create 后面加上 external关键字 。
参考资料:https://cwiki.apache.org/confluence/display/Hive/HBaseIntegration
hadoop,hbase和hive的搭建就不重复说了,不会的朋友,可以看散仙前面的博客,下面直接进入重点,关于hive集成hbase这一块,网上资料不算多,有的版本比较旧,散仙这里使用的版本是hive0.12和hbase0.96.2。
hive集成hbase的方式其实很简单,就是把Hbase的几个jar包,拷贝到hive的lib目录下即可截图如下:
上面的几个包放进Hive的lib中之后,我们需要配置在hive-site.xml里面配置下Hbase的zk地址,便于Hive连接Hbase使用,添加配置如下:
<property> <name>hbase.zookeeper.quorum</name> <value>h1,h2,h3</value> </property>
下面可以进行测试,我们直接把Hbase里的一张表,转成我们的Hive表,Hive启动前,首先要把Hadoop和Hbase启动起来,然后启动Hive,启动完进程如下所示:
[search@h1 ~]$ jps 7950 RunJar 6559 DataNode 7691 HRegionServer 6879 ResourceManager 7563 HMaster 6985 NodeManager 7474 HQuorumPeer 6731 SecondaryNameNode 6458 NameNode 8120 Jps [search@h1 ~]$
先在hbase里建一张表,并添加列簇,和列数据如下:
hbase(main):001:0> list TABLE SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/home/search/hbase-0.96.2-hadoop2/lib/slf4j-log4j12-1.6.4.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/home/search/hadoop/share/hadoop/common/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. mytest webpage 2 row(s) in 3.0870 seconds => ["mytest", "webpage"] hbase(main):002:0> scan 'mytest' ROW COLUMN+CELL 2207 column=item:name, timestamp=1407329588864, value=hadoop 23008 column=home:address, timestamp=1407329589330, value=shenzhen 2309 column=info:age, timestamp=1407329589497, value=899 24008 column=home:address, timestamp=1407329588587, value=guangzhou 2407 column=item:name, timestamp=1407329588447, value=big data 2409 column=info:age, timestamp=1407329588728, value=22.32 3109 column=info:age, timestamp=1407329588308, value=7.4 321008 column=home:address, timestamp=1407329588169, value=luoyang 33107 column=item:name, timestamp=1407329588028, value=x-code 4205 column=home:address, timestamp=1407329587701, value=beijing 44101 column=info:age, timestamp=1407329587883, value=18.5 444105 column=item:name, timestamp=1407329587555, value=a dog 12 row(s) in 0.0980 seconds
在Hive里,执行如下语句,进行关联建表:
hive> CREATE EXTERNAL TABLE hbaseive(key int, name string,address string,age double) > STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' > WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,item:name,home:address,info:age") > TBLPROPERTIES ("hbase.table.name" = "mytest");
如果不报错,就证明,集成成功,如果出现错误,一般都是hbase的某个jar包缺少造成,我们根据提示添加到hive的lib里即可,然后重启hive的的shell客户端。
建表成功后,查询如下:
hive> select * from hbaseive; OK 2207 hadoop NULL NULL 23008 NULL shenzhen NULL 2309 NULL NULL 899.0 24008 NULL guangzhou NULL 2407 big data NULL NULL 2409 NULL NULL 22.32 3109 NULL NULL 7.4 321008 NULL luoyang NULL 33107 x-code NULL NULL 4205 NULL beijing NULL 44101 NULL NULL 18.5 444105 a dog NULL NULL Time taken: 0.481 seconds, Fetched: 12 row(s) hive>
至此,我们的Hive集成Hbase就成功了,关联成功后,我们就可以对数据进行分析了,需要注意的是,我们关联过的hbase表,如果在Hbase里面删除了这个表,那么在Hive里面再次查询,就会报错,如果删除了Hive里面的表,则对Hbase没有影响。另外一点需要注意的是,使用Hive关联Hbase的建的表,是一个内部表,所以需要在Create 后面加上 external关键字 。
参考资料:https://cwiki.apache.org/confluence/display/Hive/HBaseIntegration
发表评论
-
Apache Flink在阿里的使用(译)
2019-02-21 21:18 1209Flink是未来大数据实时 ... -
计算机图形处理的一些知识
2018-04-25 17:46 1234最近在搞opencv来做一些 ... -
关于Hbase多版本存储的一个注意点
2018-04-19 11:39 1653我们知道hbase是一个多版本的管理系统,在0.96的版本之前 ... -
如何在kylin中构建一个cube
2017-07-11 19:06 1282前面的文章介绍了Apache Kylin的安装及数据仓 ... -
理解数据仓库中星型模型和雪花模型
2017-07-06 17:29 4417在数据仓库的建设中, ... -
Spark如何读取Hbase特定查询的数据
2017-06-29 21:42 4454最近工作需要使用到Spark操作Hbase,上篇文章已经写 ... -
Apache Kylin的入门安装
2017-06-27 21:27 2148Apache Kylin™是一个开源的分布式分析引擎,提供 ... -
如何使用scala+spark读写hbase?
2017-06-12 19:48 3449最近工作有点忙,所以文章更新频率低了点,希望大家可以谅解,好 ... -
ES-Hadoop插件介绍
2017-04-27 18:07 1996上篇文章,写了使用spark集成es框架,并向es写入数据,虽 ... -
如何在Scala中读取Hadoop集群上的gz压缩文件
2017-04-05 18:51 2138存在Hadoop集群上的文件,大部分都会经过压缩,如果是压缩 ... -
如何收集项目日志统一发送到kafka中?
2017-02-07 19:07 2798上一篇(http://qindongliang.iteye. ... -
spark sql on hive笔记一
2016-12-09 20:42 2271Spark sql on Hive非常方便,通过共享读取hiv ... -
Hive2.1.0集成Tez
2016-11-21 19:39 1361#### Tez是什么? Tez是Hontonworks ... -
Apache Hive2.1.0安装笔记
2016-11-16 18:51 1232Hive2.x已经足够稳定了,前面也安装过hive0.x和H ... -
Hue+Hive临时目录权限不够解决方案
2016-06-14 10:40 4725安装Hue后,可能会分配多个账户给一些业务部门操作hive,虽 ... -
hive自定义udf实现md5功能
2016-05-25 11:54 5047Hive自定义UDF实现md5算法 Hive发展至今,自身已 ... -
开源大数据索引项目hive-solr
2016-05-06 16:15 1983github地址:https://github.com/qi ... -
Hadoop的8088页面失效问题
2016-03-31 11:21 4458前两天重启了测试的hadoop集群,今天访问集群的8088任 ... -
Hadoop+Hbase集群数据迁移问题
2016-03-23 21:00 2528数据迁移或备份是任何 ... -
如何监控你的Hadoop+Hbase集群?
2016-03-21 16:10 4924前言 监控hadoop的框架 ...
相关推荐
Hadoop-2.2.0+Hbase-0.96.2+Hive-0.13.1分布式整合,Hadoop-2.X使用HA方式
叶梓老师整理的Hadoop2.2.0+Hbase0.98.4+sqoop-1.4.4+hive-0.98.1安装手册,非常实用
软件方面,需要安装jdk-7u55-linux-x64.rpm、apache-maven-3.1.1-bin.tar、hadoop-2.2.0-src.tar.gz、protobuf-2.5.0.tar.gz、zookeeper-3.4.5.tar.gz和hbase-0.96.2-hadoop2-bin.tar.gz等软件。 Hadoop2.2安装和...
本文将详细介绍如何在Linux环境下搭建Hadoop2.2.0、HBase0.96和Hive0.12的集群环境。 首先,我们从Hadoop的安装开始。Hadoop2.2.0是Apache官方稳定版,可以从官方网站或镜像站点下载。下载完成后,将其上传到Linux...
### Hadoop2.2.0 + HBase0.98.1 + Sqoop1.4.4 + Hive0.13 完全安装手册 #### 前言 随着大数据技术的发展,Hadoop已经成为处理海量数据的核心框架之一。本文旨在为读者提供一套最新的Hadoop2.2.0、HBase0.98.1、...
文档作者王扬庭分享的这份资料详细介绍了如何在云计算环境中集成和配置Hadoop-2.2.0、HBase-0.96.2以及Hive-0.13.1,形成一个完全分布式的计算环境。这个文档是《云计算之Flume+Kafka+Storm+Redis/Hbase+Hadoop+Hive...
【Hadoop2.2.0】 Hadoop2.2.0是Apache Hadoop项目的一个稳定版本,提供了改进的性能和稳定性。它引入了YARN(Yet Another Resource Negotiator),这是一个资源管理和调度器,用于更好地管理和优化分布式计算任务。...
7. 兼容性与扩展性:Hadoop 2.2.0保持了对Hadoop 1.x的兼容性,同时也提供了API和工具,方便开发者构建基于Hadoop的新应用和框架,如HBase、Hive、Pig等。 8. 安全性:Hadoop 2.2.0增强了安全性,支持Kerberos认证...
一、Hadoop2.2.0、ZooKeeper3.4.5、HBase0.96.2、Hive0.13.1是什么? Hadoop2.2.0是一个大数据处理框架,具有许多新特性,如支持Windows平台、改进了安全性、提高了性能等。 ZooKeeper3.4.5是一个分布式应用程序...
Hadoop 2.2.0 不只是MapReduce和HDFS,还包括一系列生态系统项目,如HBase(分布式NoSQL数据库)、Hive(数据仓库工具)、Pig(数据流处理语言)、Oozie(工作流调度系统)和Zookeeper(分布式协调服务)。...
在【描述】中提到的最佳组合是Hadoop 2.2.0+HBase 0.96+hive 0.13,这是一个经典的大数据处理架构。HBase是一个构建在HDFS之上的分布式列式数据库,适合实时读写操作,而Hive则是一个基于Hadoop的数据仓库工具,用于...
基于最新版本的湖仓一体、流批一体架构方案 hadoop-3.3.4+tez-0.10.2+hive-3.1.3+hbase-2.4.14+atlas-2.2.0+kafka- 2.8.2+ranger-2.3.0+flink-1.15.2+spark-3.3.0+hudi-0.12.1.jar+iceberg-0.14.1.jar+streamx
Hadoop的生态系统还包括许多其他项目,如Hive(基于SQL的数据仓库工具)、Pig(数据分析平台)、HBase(NoSQL数据库)、Spark(快速数据处理引擎)等,它们共同构成了强大的大数据处理框架。 总之,Hadoop 2.2.0是...
这些工具和库不仅服务于HDFS和MapReduce,还为其他Hadoop生态系统中的项目如HBase、Hive等提供支持。 在解压后的“hadoop-common-2.2.0-bin-master”文件夹中,你可以找到各种配置文件、脚本和可执行程序。例如: ...
4,Hadoop2.2.0 5,Hbase0.96.2 6,Zookeeper3.4.5 7,Hive0.13.13 全是Java有关的框架,主要目的在于安装Hadoop,其他的都是附带的基本配置 本脚本能够快速在Linux上安装JAVA环境,并部署hadoop,其中关于hadoop,...
- **其他Hadoop组件支持**:如Hive、HBase等,Spark 2.2.0与这些组件的集成更为紧密,提供了更多的互操作性和功能。 ### Hadoop 2.7 的关键特性 #### 1. HDFS改进 - **高可用性**:Hadoop 2.7版本加强了NameNode的...
5. **集成与扩展**:除了HBase,Apache Atlas还支持其他多种数据存储系统,如Hive、Spark、Kafka等,HBase Hook展示了其高度可扩展性,使得跨系统的数据治理成为可能。 6. **安装与配置**:要使用HBase Hook,用户...
mv ~/Desktop/开发 Hbase 需要的 jar/mysql-connector-java-5.0.8.jar /opt/hadoop/hive/apache-hive-0.14.0-bin/lib/ ``` 6. **启动Hive服务** 完成上述步骤后,可以启动Hive的服务。首先确保Hadoop已经启动,...
2. **版本匹配**:文档指出,由于使用的是CentOS 6.5 32位系统和Hadoop 2.2.0,因此选择了Hive 0.12.0版本。通常,不同组件之间需要匹配合适的版本以确保稳定运行。 3. **Hive安装**:Hive的安装过程相对简单,只...