云计算系列——HIVE1.2.1 环境搭建

      hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。

前提

         安装hive的机器上存在hadoop,否则hive不能使用

         安装hive的机器是否有“hadoop服务”无影响,但是需要有hadoop可执行程序和jar包

         注:“hadoop服务”是指 jps命令输出的那些 namenode datanode.. 等等

         下文中使用的 hc9.spads 为hadoop集群中的某一节点

         Hadoop 版本为 2.5.1

一、准备软件包

将 apache-hive-1.2.1-bin.tar.gz 和 mysql-connector-java-5.1.32.tar.gz 上传到Hadoop集群中节点hc9.spads,分别解压。

Image

二、检查 hadoop的环境变量,如果不存在则需要配置

 HADOOP_HOME

Image(1)

验证:printenv - 输出环境变量

Image(2)

  三、检查 hadoop集群运行,如果未运行则需要运行    

   NameNode 和 ResourceManager 的Http监控页面

Image(3)

  四、检查hive 的环境变量,如果不存在则需要配置      

HIVE_HOME
Image(4)

验证:

Image(5)

  五、替换低版本jar                                                 

Hadoop下jline...jar 版本太低,需要更换为hive/lib下的 jline...jar

未替换会抛出异常(略),操作如下:

Image(6)

注; 仅替换 hive所在机器即可,且不需要重启hadoop服务。

  六、准备DBMS  - MySQL                                       

1、安装MySQL,其中会有提示输入 ,通常输入 y

Image(7)

2、启动MySQL

Image(8)

3、初始用户名密码 

Image(9)

4、登录MySQL

Image(10)

5、 建立hive数据库

Image(11)

注:使用latin1字符集,若设置为utf8,hive连接时会出错。    

6、授予权限

Image(12)

  七、拷贝JDBC Driver 到hive下的lib                         

Image(13)

  八、配置hive-site.xml 中                                       

Image(14)

1、 HIVE - DBMS 配置

>Driver

Image(15)

>URL

Image(16)

>UserName

Image(17)

>Password

Image(18)

2、更改hive-site.xml 中的变量为真实变量

Image(19)

注:此二变量配置文件中存在多个,均需修改

可将system:java.io.tmpdir 更改为/usr/local/hive

可将system:user.name 更改为 root,如下

Image(20)

否则会报出以下异常:

Image(21)

Image(22)

执行初始化,初始hive元数据到mysql中

schematool -dbType mysql -initSchema

  九、安装完成,启动Hive                                         

Image(23)

  十、测试Hive QL 脚本                                            

1、建表

Image(24)

2、加载数据

>Linux机器上 新建数据文件

Image(25)

内容如下:

Image(26)

>通过hive上传到hdfs

Image(27)

>通过hive,查询表内容和表行数

Image(28)

原文地址:https://www.cnblogs.com/driftingshine/p/5006047.html