Hive是基于Hadoop的一个数据仓库,将SQL语句转换为MapReduce任务来执行,是一个非实时、批处理工具。
实验环境:
主机名
IP地址
Master
10.30.59.130
软件要求:
软件名称
软件版本
JDK
8u77
Zookeeper
3.4.5
Hadoop
2.6.0
Hive
1.1.0
软件约定:
安装包在 /opt/soft
安装目录在 /opt
先决条件:
各个主机已完成 主机名-IP 映射
各个主机已完成ssh免密登录
MySql已部署完毕并启动
ZooKeeper已部署完毕并启动
Hadoop已部署完毕并启动
可选单节点/伪分布式/全分布式/HA任意一种
这里使用本地伪分布式搭建
实验步骤: 一、解压组件 [root@master ~]# cd /opt [root@master opt]# tar -xzvf soft/apache-hive-1.1.0-bin.tar.gz [root@master opt]# mv apache-hive-1.1.0-bin/ hive
二、填写配置文件 [root@master opt]# vi hive/conf/hive-site.xml
查找并修改以下K-V键值对
hive.exec.local.scratchdir
hive.downloaded.resources.dir
hive.querylog.location
javax.jdo.option.ConnectionURL
jdbc:mysql://127.0.0.1:3306/hive?createDatabaseIfNotExist=true&useSSL=false
javax.jdo.option.ConnectionDriverName
javax.jdo.option.ConnectionUserName
javax.jdo.option.ConnectionPassword
三、配置环境变量并令其立即生效
[root@master opt]# vi /etc/profile.d/hadoop-etc.sh export HIVE_HOME=/opt/hive export PATH=$PATH:$HIVE_HOME/bin [root@master opt]# source /etc/profile.d/hadoop-etc.sh
三、修复兼容性 [root@master opt]# cp hive/lib/jline-2.12.jar hadoop/share/hadoop/yarn/lib/ [root@master opt]# mv hadoop/share/hadoop/yarn/lib/jline-0.9.94.jar hadoop/share/hadoop/yarn/lib/jline-0.9.94.jar.bak
四、初始化 [root@master opt]# cp soft/mysql-connector-java-5.1.47-bin.jar hive/lib/ [root@master opt]# schematool -initSchema -dbType mysql [root@master opt]# schematool -initSchema -dbType mysql Metastore connection URL: jdbc:mysql://127.0.0.1:3306/hive?createDatabaseIfNotExist=true&useSSL=false Metastore Connection Driver : com.mysql.jdbc.Driver Metastore connection User: root Starting metastore schema initialization to 1.1.0 Initialization script hive-schema-1.1.0.mysql.sql Initialization script completed schemaTool completed
实验验证 [root@master opt]# hive Logging initialized using configuration in jar:file:/opt/hive/lib/hive-common-1.1.0.jar!/hive-log4j.properties SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/opt/hadoop/share/hadoop/common/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/opt/hive/lib/hive-jdbc-1.1.0-standalone.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]hive>