在Hadoop1.2.1分布式集群环境下安装hive0.12

● 前言:

1. 大家最好通读一遍过后,在理解的基础上再按照步骤搭建。

2. 之前写过两篇<<在VMware下安装Ubuntu并部署Hadoop1.2.1分布式环境>>、《在Hadoop1.2.1分布式集群环境下安装Mahout0.9框架》都是Hadoop家族一系列的,后续还会有其它内容,敬请期待!

3. 好记性不如烂笔头,最新突然想把自己学习的东西整理出来,然而我也是刚刚学习,而且水平有限,难免会错误,请谅解并指正,如有什么问题可以留言咨询。

一、推荐阅读文章

在VMware下安装Ubuntu并部署Hadoop1.2.1分布式环境

在Hadoop1.2.1分布式集群环境下安装Mahout0.9框架

二、前提条件

Hadoop1.2.1分布式集群环境搭建成功,并且Hadoop集群服务器正常运行。

三、所需环境与软件

1. Hadoop分布式集群环境:

见《在VMware下安装Ubuntu并部署Hadoop1.2.1分布式环境》。

2.  Hive0.12: hive-0.12.0.tar.gz

四、安装与配置

1. 下载hive-0.12.0.tar.gz,并使用以下命令解压。

tar -zxvf hive-0.12.0.tar.gz

解压后文件夹为:hive-0.12.0

2. 移动hive-0.12.0到opt目录下,命令如下。

sudo mv hive-0.12.0 /opt/hive-0.12.0

3. 设置hive的环境变量

如(图1)所示,使用命令 sudo gedit /etc/profile  打开文件后,在文件最后面加入:

export HIVE_HOME=/opt/hive-0.12.0

export CLASSPATH=${CLASSPATH}:${HIVE_HOME}/lib

export PATH=${PATH}:${HIVE_HOME}/bin

(图1)

备注:最后要使用命令:source /etc/profile  使环境变量立即生效。

4. 创建hive-env.sh、hive-site.xml文件,如(图2)所示。

cd /opt/hive-0.12.0/conf

cp  hive-env.sh.template   hive-env.sh

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

(图2)

5. 修改hive-env.sh文件,如(图3)所示。

HADOOP_HOME=/opt/hadoop-1.2.1

export HIVE_CONF_DIR=/opt/hive-0.12.0/conf

(图3)

6. 修改hive-site.xml文件,如(图4,图5)所示。

有两处需要修改的:

(1) hive-site.xml文件最后面,大约2000行作业,把

<value>auth</auth>修改为<value>auth</value>。

(图4)

(2) 把hive.metastore.schema.verification=true,修改为

hive.metastore.schema.verification=false。

意思是:(强制metastore的schema一致性,开启的话会校验在metastore中存储的信息的版本和hive的jar包中的版本一致性,并且关闭自动schema迁移,用户必须手动的升级hive并且迁移schema,关闭的话只会在版本不一致时给出警告,默认是false不开启.)

(图5)

备注:如果不修改成false的话会报一下错误:

FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.metastore.HiveMetaStoreClient

7. 到此hive安装完成,下面运行和测试下是否安装成功。

五、运行和测试

1. 使用 start-all.sh 命令启动hadoop集群,并使用jps查看是否启动成功,如(图6)所示。

(图6)

2. 首次使用的时候,需要使用 hive --service cli 命令,来启动hive命令行模式,如(图7)所示。

然后使用命令:

show tables;

create table test1(id int,name string);

select * from test1;

drop table test1;

来测试HiveQL是否能使用。

(图7)

备注:首次如果不使用hive --service cli 命令,来启动hive命令行模式,会报如下错误:

FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.metastore.HiveMetaStoreClient

再次使用的时候就不需要使用hive --service cli 命令了。

3. 如果出现如(图7)所示页面,说明运行和测试成功。

备注:可以使用以下命令使报错更详细一点:

hive -hiveconf hive.root.logger=DEBUG,console

在Hadoop1.2.1分布式集群环境下安装hive0.12的更多相关文章

  1. 分布式集群环境下,如何实现session共享五(spring-session+redis 实现session共享)

    这是分布式集群环境下,如何实现session共享系列的第五篇.在上一篇:分布式集群环境下,如何实现session共享四(部署项目测试)中,针对nginx不同的负载均衡策略:轮询.ip_hash方式,测 ...

  2. 分布式集群环境下,如何实现session共享四(部署项目测试)

    这是分布式集群环境下,如何实现session共享系列的第四篇.在上一篇:分布式集群环境下,如何实现session共享三(环境搭建)中,已经准备好了相关的环境:tomcat.nginx.redis.本篇 ...

  3. 分布式集群环境下,如何实现session共享三(环境搭建)

    这是分布式集群环境下,如何实现session共享系列的第三篇.在上一篇:分布式集群环境下,如何实现session共享二(项目开发)中,准备好了一个通过原生态的servlet操作session的案例.本 ...

  4. 分布式集群环境下,如何实现session共享二(项目开发)

    在上一篇分布式集群环境下,如何实现session共享一(应用场景)中,介绍了在分布式集群下,需要实现session共享的应用场景.并且最后留下了一个问题:在集群环境下,如何实现session的共享呢? ...

  5. 基于HBase Hadoop 分布式集群环境下的MapReduce程序开发

    HBase分布式集群环境搭建成功后,连续4.5天实验客户端Map/Reduce程序开发,这方面的代码网上多得是,写个测试代码非常容易,可是真正运行起来可说是历经挫折.下面就是我最终调通并让程序在集群上 ...

  6. 分布式集群环境下,如何实现session共享一(应用场景)

    在web应用中,由于http的请求响应式,无状态.要记录用户相关的状态信息,比如电商网站的购物车,比如用户是否登录等,都需要使用session.我们知道session是由servlet容器创建和管理, ...

  7. Ubuntu14(64位) 集群环境下安装Hadoop2.4

    经过前边的积累,今天最终实现了集群环境下部署Hadoop.并成功执行了官方的样例. 工作例如以下: 两台机器: NameNode:上网小本,3G内存.机器名:YP-X100e,IP:192.168.1 ...

  8. elasticsearch与mongodb分布式集群环境下数据同步

    1.ElasticSearch是什么 ElasticSearch 是一个基于Lucene构建的开源.分布式,RESTful搜索引擎.它的服务是为具有数据库和Web前端的应用程序提供附加的组件(即可搜索 ...

  9. 分布式集群环境下运行Wordcount程序

    1.分布式环境的Hadoop提交作业方式与本地安装的Hadoop作业提交方式相似,但有两点不同: 1)作业输入输出都存储在HDFS 2)本地Hadoop提交作业时将作业放在本地JVM执行,而分布式集群 ...

随机推荐

  1. R语言绘图002-页面布局

    par().layout().split.screen()函数 1. par()函数的参数详解 函数par()可以用来设置或者获取图形参数,par()本身(括号中不写任何参数)返回当前的图形参数设置( ...

  2. cygwin and its host machine

    Senario 本来我是想要修改下 machine name 在Ubuntu中的步骤是这样的 1 sudo hostname newMechineName 2 sudo vi /etc/hostnam ...

  3. 避免JS全局变量冲突

    一.原则1.1 用匿名函数将脚本包起来1.2 使用命名空间(多级) 二.改进过程 2.1 原始数据(a.js和b.js都有全局变量window.a,导致冲突,全局变量属于window) //a.js& ...

  4. 使用HTML5中的element.dataset操作自定义data-*数据

    不久之前我向大家展示了非常有用的classList API,它是一种HTML5里提供的原生的对页面元素的CSS类进行增.删改的接口,完全可以替代jQuery里的那些CSS类操作方法.而另外一个非常有用 ...

  5. 【Ubuntu】NAT配置

    1.简介 2.配置 1.简介 NAT(Network Address Translation,网络地址转换)是将IP 数据包头中的IP 地址转换为另一个IP 地址的过程.在实际应用中,NAT 主要用于 ...

  6. DOM操作样式表及其兼容性

    DOM操作样式表的时候,存在很多浏览器兼容上的问题,测试的时候用的是Firefox 28.0.IE11.IE8.Chrome.测试的时候发现,不兼容问题基本上都是IE8和非IE浏览器之家的问题,很多I ...

  7. Spring MVC 入门教程示例 (一)

    今天和大家分享下  Spring MVC  入门教程 首先还是从 HelloWorld  web 工程开始 -------------------------- 1.首先创建一个Maven Web工程 ...

  8. myeclipse 反编译插件 jad 安装

    1.  准备工作 下载jad.exe文件:http://www.varaneckas.com/sites/default/files/jad/jad158g.win.zip 下载jadeclipse插 ...

  9. PowerDesigner(九)-模型文档编辑器(生成项目文档)(转)

    模型文档编辑器 PowerDesigner的模型文档(Model  Report)是基于模型的,面向项目的概览文档,提供了灵活,丰富的模型文档编辑界面,实现了设计,修改和输出模型文档的全过程. 模型文 ...

  10. UML标准图(转载)

    在前面的章节中,我们已经讨论过的构建和其他必要的UML元素.现在,我们需要明白的地方使用这些元素. 元素都可以以不同的方式,使一个被称为图的完整的UML图片,如:组件.所以这是非常重要的,要了解不同的 ...