hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制。hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,能将SQL语句转变成MapReduce任务来执行。Hive的优点是学习成本低,可以通过类似SQL语句实现快速MapReduce统计,使MapReduce变得更加简单,而不必开发专门的MapReduce应用程序。hive十分适合对数据仓库进行统计分析
在安装Hive之前,要求先预装:
- 安装JDK
- 安装Hadoop
- 安装MySQL
将hive解压到/usr/local下:
wget http://mirror.bit.edu.cn/apache/hive/hive-3.1.2/apache-hive-3.1.2-bin.tar.gz
tar -zxvf apache-hive-3.1.2-bin.tar.gz -C /usr/local/
mv apache-hive-3.1.2-bin hive
修改环境变量/etc/profile
#hive
export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin
执行source /etc.profile:执行
hive --version
有hive的版本显现,安装成功!
建立Hive专用的元数据库
创建Hive专用元数据库:
usr/local/hive/conf/修改hive-site.xml:
cp hive-default.xml.template hive-site.xml
vim hive-site.xml
1.配置hive-site.xml(第5点的后面有一个单独的hive-site.xml配置文件,这个如果有疑问可以用后面的配置文件,更容易明白)
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost/hive?createDatabaseIfNotExist=true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hive</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>password</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
“hive?createDatabaseIfNotExist=true”如果hive数据库不存在就自动创建一个数据库
2.复制mysql的驱动程序到hive/lib下面。下载地址:https://dev.mysql.com/downloads/connector/j/)
(驱动包名为:mysql-connector-java-5.1.46-bin.jar)
3.在mysql中hive的schema(在此之前需要创建mysql下的hive数据库)
[root@s100 bin]# pwd
/usr/local/hive/bin
[root@s100 bin]# schematool -dbType mysql -initSchema
4.执行hive命令
执行HiveQL
hive> create database hive_1;
OK
Time taken: 1.432 seconds
hive> show databases;
OK
default
hive_1
Time taken: 1.25 seconds, Fetched: 2 row(s)
在Hive中创建表xp:
在mysql中查看:(use hive切换到数据库hive)
显示 hive 数据库中的数据表:
查看 hive 的元数据信息:
到此Hive集成Mysql作为元数据已完成。