暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Hive学习:安装与使用,快速上手

Ipoo 2019-12-30
174

点击蓝字关注我吧


01

概念


  • Hive是基于Hadoop的一个 数据仓库工具,可以将结构化的数据文件映射
    成一张表,并提供类SQL查询功能


如下特点:

  • 支持索引,加快数据查询。

  • 不同的存储类型,如纯文本文件、HBase中的文件。

  • 将元数据保存在关系数据库中,大大减少了在查询过程中执行语义检查的时间。

  • 可以直接使用存储在Hadoop文件系统中的数据。

  • 类SQL的查询方式,将SQL查询转换为MapReducer的Job在Hadoop集群上执行。



02

安装与配置


  • 官网下载安装包(apache-hive-2.3.2-bin.tar.gz): 

http://mirror.bit.edu.cn/apache/hive/
  • 选择mysql作为元数据存储,所以还需下载jdbc驱动包

    (mysql-connector-java-5.1.45.tar下载地址:

https://dev.mysql.com/downloads/connector/j/

下载完后要把相应的驱动复制到hive-2.3.2/lib文件夹下。


  • 安装mysql。

  • 解压Hive安装文件

tar -zxf apache-hive-2.3.2-bin.tar.gz
  • 配置环境变量

vim ~/.bashrc

添加下面俩行(路径修改为自己的)



执行下面命令使配置立即生效:

source ~/.bashrc
  • 修改hive-site.xml文件

vim apache-hive-2.3.2-bin/conf/hive-site.xml


完整配置文件如下(数据库username 与 password 记得修改):

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>hive.execution.engine</name>
<value>spark</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>root</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive_metastore?autoReconnect=true&amp;useUnicode=true&amp;createDatabaseIfNotExist=true&amp;characterEncoding=utf8</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>
</configuration>





  • 修改hive-env.sh文件

cp hive-env.sh.template hive-env.sh
vim hive-env.sh
export HADOOP_HOME=/home/hadoop/opt/hadoop-2.9.0 #添加这行

保存source hive-env.sh使文件生效.

  • 创建hive-site.xml软连接

cd opt/spark-2.2.1-bin-hadoop2.7/conf
ln -s /home/hadoop/opt/apache-hive-2.3.2-bin/conf/hive-site.xml hive-site.xml

  • 给hadoop权限

vim hadoop-2.9.0/etc/hadoop/core-site.xml
<property>
<name>hadoop.proxyuser.hadoop.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.hadoop.groups</name>
<value>*</value>
</property


02

运行

  • 初始化

cd opt/apache-hive-2.3.2-bin/bin
./schematool -dbType mysql -initSchema

之后进入mysql

mysql -uroot -p

查看数据库show databases;
是否生成performance_schema

  • 打开hiveserver2

./hiveserver2

HiveServer2(在Hive 0.11中引入)有它自己的CLI叫做Beeline。hiv病毒现在已经被弃用,因为它缺少多用户、安全以及其他的HiveServer2的功能。从壳层跑出:

  • 运行

由于配置过环境变量可以直接执行hive

hive

  • Hive Beeline使用

./beeline -u jdbc:hive2://localhost:10000

结束。



Ipoo

没时间解释了,快长按左边二维码关注我们~~




文章转载自Ipoo,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论