Spark环境搭建(四)-----------数据仓库Hive环境搭建

Hive产生背景

1)MapReduce的编程不便,需通过Java语言等编写程序

2) HDFS上的文缺失Schema(在数据库中的表名列名等),方便开发者通过SQL的方式处理结构化的数据,而不需要Java等编写程序

Hive是什么

1)facebook开源,最初为解决海量的结构化日志数据统计问题

2)构建中Hadoop上的数据仓库

3)Hive定义了一种SQL查询语言:HQL(类似SQl但又不完全相同)

4)通常进行离线处理(采用MapReduce)

5)多种不同的底层执行引擎(Hive on MapReduce/Tez/Spark)

6)支持多种不同的压缩格式,存储格式以及自定义函数

  压缩格式:GZIP,LZO,Snappy,BZIP2..

  存储格式:TextFile,SequenceFile,RCFile,ORC,PARquet

  UDF:自定义函数

为什么使用Hive

1) 简单,容易上手(提供了类似SQL查询语言HQL)

2) 为超大数据集设计的计算、存储扩展能力(MR计算,HDFS存储)

3) 统一的元数据管理(可与Presto/Impala/SparkSQL等共享数据)

Hive环境搭建

1)使用版本:hive-1.1.0-cdh5.7.0.tar.gz

2) 下载:

  wget http://archive.cloudera.com/cdh5/cdh/5/

3)解压:tar -zxvf hive-1.1.0-cdh5.7.0.tar.gz -C ~/app/

4)配置

  (1)  系统环境变量(~/.bash_profile)

1       export HIVE_HOME=/root/app/hive-1.1.0-cdh5.7.0
2 
3       export PATH=$HIVE_HOME/bin:$PATH

  (2) 安装一个Mysql (可以参考我这篇博文

    命令 yum install *** 

  (3) 在conf下新建一个 hive-site.xml

    插入以下内容

    

 1 <configuration>
 2     <property>
 3       <name>javax.jdo.option.ConnectionURL</name>
 4         <value>jdbc:mysql://localhost:3306/sparksql?createDatabaseIfNotExist=true</value>
 5     </property>
 6     <property>
 7         <name>javax.jdo.option.ConnectionDriverName</name>
 8         <value>com.mysql.jdbc.Driver</value>
 9      </property>
10 
11     <property>
12           <name>javax.jdo.option.ConnectionUserName</name>
13           <value>root</value>
14     </property>
15 
16     <property>
17       <name>javax.jdo.option.ConnectionPassword</name>
18         <value>root</value>
19     </property  
20 </configuration>

   其中需要填写你的数据库用户名和密码以及连接数据库的驱动

  (4)  拷贝数据库驱动(点击这里下载)到$HIVE_HOME/lib/下

  (5)  启动Hive

    命令: $HIVE_HOME/bin/hive

没有报错,至此Hive环境搭建完毕

原文地址:https://www.cnblogs.com/ruoniao/p/7294454.html