文章目录
什么是Hive
Hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制。
Hive的优点是学习成本低,可以通过类似SQL语句实现快速MapReduce统计,使MapReduce变得更加简单,而不必开发专门的MapReduce应用程序。
一、事前准备
1、虚拟机安装MySQl
可以参考:VirtualBox下创建Linux虚拟机并安装java和mysql
虚拟机使用VirtualBox或者VMware都可以,操作步骤是相同的
安装好MySQL之后 ,进入新建一个用户hadoop并赋权
create user 'hadoop'@'%' IDENTIFIED BY 'ok';
grant all on *.* to 'hadoop'@'%';
2、虚拟机安装hadoop
可以参考:CentOS7下安装和配置Hadoop以及Hadoop集群
3、Hive安装包
二、安装Hive
根目录下新建sofeware目录将安装包拖入
mkdir /software
1、解压,改名
解压至opt目录下
tar -zxvf hive-1.1.0-cdh5.14.2.tar.gz -C /opt/
进入opt目录对其改名
cd /opt
mv hive-1.1.0-cdh5.14.2/ hive
2、修改环境变量
vi /etc/profile
export HIVE_HOME=/opt/hive
export PATH=$PATH:$HIVE_HOME/bin
source /etc/profile
3、修改配置文件
在hive的conf目录下新建配置文件
vi /opt/hive/conf/hive-site.xml
添加下方配置
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!--管理表存储的位置-->
<property>
<name>hive.metastore.warehouse.dir</name>
<value>hdfs://hadoop1:9000/hive/warehouse</value>
</property>
<property>
<name>hive.metastore.local</name>
<value>true</value>
</property>
<!-- 指定hive元数据存储的MySQL地址 -->
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://127.0.0.1:3306/hive?createDatabaseIfNotExist=true</value>
</property>
<!-- 元数据存储数据库的驱动 -->
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<!-- 元数据存储数据库的用户名 -->
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<!-- 元数据存储数据库的密码,(注:这里是mysql自己root用户的密码) -->
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>ok</value>
</property>
</configuration>
将上面配置文件中需要的目录创建一下
mkdir /opt/hive/warehouse
在hive的conf目录下新建配置文件
vi /opt/hive/conf/hive-env.sh
添加下方配置
export HADOOP_HOME=/opt/hadoop
export HIVE_HOME=/opt/hive
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export HIVE_AUX_JARS_PATH=/opt/hive/lib
export JAVA_HOME=/opt/jdk8
export HIVE_CONF_DIR=/opt/hive/conf
进入hive的conf目录下
cd /opt/hive/conf
将文件hive-log4j.properties.template改名
mv hive-log4j.properties.template hive-log4j.properties
进入
vi hive-log4j.properties
按下19回车快速定位,将内容修改为
hive.log.dir=/opt/hive/logs
完成后将目录创建一下
mkdir /opt/hive/logs
进入hive目录下的lib目录
cd /opt/hive/lib
将mysql-connector的jar包拖入
给hive文件赋权
chmod 777 /opt/hive
4、运行Hive
1、先启动hdfs
start-dfs.sh
2、初始化数据库
schematool -initSchema -dbType mysql
输入命令hive
使用sqlyog连接数据库
发现已有hive库
表示hive已成功运行
现在可以在控制台上使用sql语句操作数据库
exit
退出
因为配置文件上warehouse目录存储在hdfs上
可以使用192.168.226.101:50070查看刚才建的表