1.Hive概述
Hive是基于Hadoop的一个数据仓库工具,用于解决海量结构化日志的数据统计,可以将结构化的数据文件映射成为一张表,并提供类SQL的查询功能。
本质上是将HQL转化成为MapReduce程序
- Hive处理的数据存储在HDFS上
- Hive分析数据底层实现的是MapReduce
- 执行程序运行在YARN上
在进行Hive的安装之前需要在当前环境当中安装Mysql数据库,原因是Hive本质上是一个数据真实存储在HDFS文件服务器上,所有数据的元数据(数据位置,数据大小,所属库,所属表)都保存在Mysql数据库中,自己本身只是调度HDFS上的数据然后将HQL语句解析,编译成MapReduce程序进行数据的操作。
Hive本身自带一个名为derby的数据库,而数据库存在一些的问题,所以采用Mysql数据库替换原来的derby数据库,对元数据进行记录管理。
2.Hive的安装
1.下载解压hive-2.3.9
2.修改配置文件
-
hive-env.sh
# HadoopHome HADOOP_HOME=/opt/hadoop-2.7.7 # Hive配置文件路径 export HIVE_CONF_DIR=/opt/hive-2.3.9/conf # Jdk路径 export JAVA_HOME=/opt/jdk1.8
-
从写一份hive-site.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> //配置文档中使用的数据库在mysql提前创建好 <configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://host01:3306/hive</value> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.cj.jdbc.Driver</value> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>root</value> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>123456</value> </property> </configuration>
-
上传jdbc连接驱动jar包到hive的lib中
这个驱动包可以在本地的maven仓库中找到直接上传
-
配置环境变量
echo 'export HIVE_HOME=/opt/hive-2.3.9' >> /etc/profile echo 'export PATH=$HIVE_HOME/bin:$PATH' >> /etc/profile source /etc/profile
-
初始化元数据库
schematool -dbType mysql -initSchema
-
启动客户端
hive