hbase0.96与hive0.12整合文档

本文所用环境为3台hadoop2.2,hbase已经安装完毕,具体安装可参照前两篇文章。

hive适用的元数据库为mysql,所以master上要安装mysql,用系统自带的即可,这里不在详述。

(1)安装hive

  1. 解压
# tar zvxf hive-0.12.0.tar.gz -C /usr
# cd /usr
# mv hive-0.12.0 hive

2.替换jar包,保持hbase0.96与hadoop2.2一致

# cd /usr/hive/lib
# rm -rf hbase-0.94*
# find /usr/hbase/lib -name "hbase*.jar"|xargs -i cp {} ./

重点检查下zookeeper和protobuf的jar包是否和hbase保持一致,如果不一致,
拷贝protobuf.**.jar和zookeeper-3.4.5.jar到hive/lib下。

3.准备mysql当元数据库

拷贝mysql的jdbc jar包mysql-connector-java-5.1.10-bin.jar也拷贝到hive-0.12.0/lib下

拷贝完成后修改权限:

# chmod 777 mysql-connector-java-5.1.10-bin.jar

4.检查hbase与hive连接包是否存在,如果不存在拷贝一个到lib下

# cd /usr/hive/lib
# find -name hive-hbase-handler*

5.配置mysql

安装mysql:

# yum install -y mysql mysql-server

安装完成后启动mysql:

# service mysqld start
# mysql

mysql相关操作:

①修改root密码:

# update user set password=password(‘hadoop‘) where user=‘root‘;

可自己根据情况修改

②建立数据库hive

# create database hive;

③授权

# grant all on hive.* to ‘root‘@‘%‘  identified by ‘hadoop‘;  
# flush privileges;

6.修改hive-site.xml配置

此处使用远程配置:

<configuration>
	<property>
		<name>javax.jdo.option.ConnectionUserName</name>
		<value>root</value>
	</property>
	<property>
		<name>javax.jdo.option.ConnectionPassword</name>
		<value>hadoop</value>
	</property>
	<property>
  		<name>hive.metastore.warehouse.dir</name>
		<value>hdfs://master:8020/hive/warehouse</value>
	</property>
	<property>
		<name>hive.exec.scratchdir</name>
		<value>hdfs://master:8020/hive/scratchdir</value>
	</property>
	<property>
		<name>hive.querylog.location</name>
		<value>/usr/hive/logs</value>
	</property>
	<property>
		<name>javax.jdo.option.ConnectionURL</name>
		<value>jdbc:mysql://192.168.41.100:3306/hiveMeta?createDatabaseIfNotExist=true</value>
	</property>
	<property>
		<name>javax.jdo.option.ConnectionDriverName</name>
		<value>com.mysql.jdbc.Driver</value>
	</property>
	<property>
		<name>hive.aux.jars.path</name>
		<value>file:///usr/hive/lib/hive-hbase-handler-0.13.0-SNAPSHOT.jar,file:///usr/hive/lib/protobuf-java-2.5.0.jar,file:///usr/hive/lib/hbase-client-0.96.0-hadoop2.jar,file:///usr/hive/lib/hbase-common-0.96.0-hadoop2.jar,file:///usr/hive/lib/zookeeper-3.4.5.jar,file:///usr/hive/lib/guava-11.0.2.jar</value>
	</property>
	<property>
		<name>hive.metastore.uris</name>
		<value>thrift://192.168.41.100:9083</value>
	</property>
</configuration>

注意:

此处配置为连接mysql的账号密码

7.在HDFS上新建目录并授权

# hadoop fs -mkdir     /hive/warehouse
# hadoop fs -mkdir      /hive/scratchdir
# hadoop fs -chmod g+w  /hive/warehouse
# hadoop fs -chmod g+w   /hive/scratchdir

这里创建的目录名对应配置文件中的选项:

8.修改其他配置:

①修改hadoop中的hadoop-env.sh

# vim /usr/hadoop/etc/hadoop/hadoop-env.sh

修改如下:

②修改hive中配置

# cd /usr/hive/conf
# mv hive-default.xml.template hive-default.xml
# mv hive-env.sh.template hive-env.sh
# cd /usr/hive/bin
# vim hive-config.sh

修改内容如下:

(2)启动hive

1.启动hadoop和hbase

2.启动hive元数据库

# cd /usr/hive/bin
# hive  --service metastore -hiveconf hive.root.logger=DEBUG,console

元数据库启动后会卡住,放着不管,开启开启另一个终端即可。

3.启动hive

在另一个终端中运行:

# cd /usr/hive/bin
# hive

(3)测试

  1. 分别启动hive和hbase shell
  2. 查看hive和hbase中,发现没有任何表:

3.在hive中创建表,语句如下:

hive> CREATE TABLE hbase_table_1(key int, value string) STORED BY ‘org.apache.hadoop.hive.hbase.HBaseStorageHandler‘ WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf1:val") TBLPROPERTIES ("hbase.table.name" = "xyz");

创建之后分别查看hbase和hive中的变化:

4.通过hbase添加数据后再次查看:

至此说明hive和hbase整合成功。

hbase0.96与hive0.12整合文档,布布扣,bubuko.com

时间: 2024-10-11 21:55:57

hbase0.96与hive0.12整合文档的相关文章

_00018 Hadoop-2.2.0 + Hbase-0.96.2 + Hive-0.13.1 分布式环境整合,Hadoop-2.X使用HA方式

博文作者:妳那伊抹微笑 博客地址:http://blog.csdn.net/u012185296 个性签名:世界上最遥远的距离不是天涯,也不是海角,而是我站在妳的面前,妳却感觉不到我的存在 技术方向:Flume+Kafka+Storm+Redis/Hbase+Hadoop+Hive+Mahout+Spark ... 云计算技术 转载声明:可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明,谢谢合作! qq交流群:214293307  (期待与你一起学习,共同进步) # Hadoo

ubuntu12.04+hadoop2.2.0+zookeeper3.4.5+hbase0.96.2+hive0.13.1分布式环境部署

博文作者:迦壹 博客地址:http://idoall.org/home.php?mod=space&uid=1&do=blog&id=542 转载声明:可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明,谢谢合作! --------------------------------------- 目录: 一.hadoop2.2.0.zookeeper3.4.5.hbase0.96.2.hive0.13.1都是什么? 二.这些软件在哪里下载? 三.如何安装 1.安装JD

12.1 文档相关 Webbrowser 该文档已被修改,是否保存修改结果

附件:http://files.cnblogs.com/xe2011/Webbrowser_Document_IsModified.rar 该文档已被修改,是否保存修改结果?是:保存修改结果否:放弃修改结果取消:仍打开该文档 触发这个对话框方法 初始化 private void Form1_Load(object sender, EventArgs e) { webBrowser1.Navigate("about:blank"); webBrowser1.Document.Write(

Hadoop-2.2.0 + Hbase-0.96.2 + Hive-0.13.1(转)

From:http://www.itnose.net/detail/6065872.html # 需要软件 Hadoop-2.2.0(目前Apache官网最新的Stable版本) Hbase-0.96.2(这里就用这个版本,跟Hadoop-2.2.0是配套的,不用覆盖jar包什么的) Hive-0.13.1(目前是最新版本) Zookeepr-3.4.6(这里推荐使用 3.4.5) Jdk1.7.0_60(这里推荐使用1.7.0_45) Mysql-5.5.31 # 集群结构图 NN : Nam

Hbase0.98版本的安装部署配置管理(Hadoop2.3、Hbase0.98、Hive0.13整合)

简介: HStore存储是HBase存储的核心了,其中由两部分组成,一部分是MemStore,一部分是StoreFiles.MemStore是Sorted Memory Buffer,用户写入的数据首先会放入MemStore,当MemStore满了以后会Flush成一个StoreFile(底层实现是HFile),当StoreFile文件数量增长到一定阈值,会触发Compact合并操作,将多个StoreFiles合并成一个StoreFile,合并过程中会进行版本合并和数据删除,因此可以看出HBas

PHP和Golang使用Thrift1和Thrift2访问Hbase0.96.2(ubuntu12.04)

目录: 一.Thrift1和Thrift2的简要介绍 1) 写在前面 2) Thrift1和Thrift2的区别  二.Thrift0.9.2的安装 1) 安装依赖插件 2) Thrift0.9.2的编译  3) Thrift0.9.2编译后,配置成可执行文件 三.Hbase0.96.2的安装 1) Hbase的介绍 2) Hbase的安装 3) Hbase基于源码的Thrift生成接口文件 四.PHP和Golang使用Thrift1和Thrift2访问Hbase 1) PHP基于Thrift1

琐碎-hadoop2.2.0-hbase0.96.0-hive0.13.1整合

关于hadoop和hive.hbase的整合就不说了,这里就是在hadoop2.2.0的环境下整合hbase和hive 因为hive0.12不支持hadoop2,所以还要替换一些hadoop的jar包,但是从0.13开始就方便多了 环境:centos6.6-x64.jdk1.7.hadoop2.2.0.hbase0.96.hive0.13.1 1.hadoop启动.hbase的安装.MySQL的安装 ... ... 2.hive的安装与配置 1)解压 2)把hbase中的一些包拷入hive li

Flume1.5.0的安装、部署、简单应用(含分布式、与hadoop2.2.0、hbase0.96的案例)

目录: 一.什么是Flume? 1)flume的特点 2)flume的可靠性 3)flume的可恢复性 4)flume 的 一些核心概念 二.flume的官方网站在哪里? 三.在哪里下载? 四.如何安装? 五.flume的案例 1)案例1:Avro 2)案例2:Spool 3)案例3:Exec 4)案例4:Syslogtcp 5)案例5:JSONHandler 6)案例6:Hadoop sink 7)案例7:File Roll Sink 8)案例8:Replicating Channel Sel

关于XML文档操作类

1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Xml; 6 7 namespace ZW.ClassLibrary 8 { 9 public class XmlHelpers 10 { 11 /// <summary> 12 /// XML文档 13 /// </summary> 14 XmlDocument x