设为首页 加入收藏

TOP

Hive | Hive 安装详解
2019-04-14 12:57:24 】 浏览:109
Tags:Hive 安装 详解

一、Hive 介绍

二、准备工作

三、Hive下载

四、Hive 安装

五、Hive 启动


一、Hive 介绍

Hive 是构架在 hadoop 之上的 数据仓库工具,提供简单的 sql 查询功能,被称为HiveQL 或 HQL,然后将 sql 语句转换为 MapReduce 任务进行运行,来处理结构化数据

优点:

1)操作接口采用类SQL语法,容易上手

2)避免了用 Java 写 MapReduce,降低开发人员的学习成本;通过SQL可轻松访问数据,从而实现数据仓库任务,如提取-转换-加载(ETL),报告和数据分析

3)统一的元数据管理,可与 impala/spark 等共享元数据

4)数据的离线处理,如日志分析,海量结构化数据离线分析

缺点:

1)Hive执行延迟比较高,因此 hive 常用于数据分析的,不适合实时性要求高的场景

2)因为Hive的执行延迟比较高,对于处理小数据没有优势,适合处理大数据

二、准备工作

1. 检查Java JDK 是否安装

输入 java -version

4170765-f58d0732e682f972.png

若显示以上信息,则说明有安装;若没有安装,先进行 jdk 的安装

Java JDK 下载和安装过程链接:https://www.jianshu.com/p/cff2b88883e4

2. 检查 Hadoop 是否安装

输入 hadoop version

4170765-e32034c6717a1fff.png

本人安装了 hadoop 2.2.0,若没有安装hadoop,则安装以下步骤进行 hadoop 的下载和部署:

step1: Linux系统Hadoop下载

step2: Hadoop伪分布式模式部署

3. 检查 Mysql 是否安装

输入 yum list installed | grep mysql

安装Mysql链接:CentOS7系统下 Mysql 的安装

三、Hive下载

1. 官网下载 Hive

Hive官网链接:http://hive.apache.org/downloads.html

step1:在DOWNLOADS下点击 Download a release now! 进入

4170765-e4db87a63712c3cb.png

step2:在 HTTP 下可看到多个下载 Hive 的链接,选择一个进入

4170765-e7c875be39f4fa3f.png

step3:点击需要下载的版本,进入

4170765-e7de5c7cb43ca5e0.png

step4:选择 apache-hive-bin.tac.gz 下载到本地

4170765-b908e372edbd66f6.png

注:

xx-bin.tac.gz 是 class 文件,java 已编译过

xx-src.tac.gz 是 java 文件,是 java源代码

.tac.gz 是 linux 下的安装包

2. 将本地下载的 Hive 安装包上传到 Linux 上

本人是通过 Xshell 的 lrzsz 软件上传文件

step5:Xshell 连接 linux服务器 ,进入放置该文件的目录

本人将文件上传到 /opt/software 目录下

输入 cd /opt/software 进入到该目录

输入 rz 运行该命令,弹出一个文件选择窗口,则从本地选择文件上传到服务器

4170765-7a95edfa3a372736.png

上传完毕后,可在指定目录下,看到上传的 hive 安装包

4170765-1d00a6d25f7c0122.png

四、Hive 安装

1. 安装Hive

step1:创建存放 hive 目录

进入到本人存放软件的目录 /opt/modules

输入 mkdir hive 创建hive目录

4170765-39714b7482644926.png

step2:解压 hive 安装包到 hive目录下

输入 tar -zxf /opt/software/apache-hive-1.2.2-bin.tar.gz -C /opt/modules/hive

将存放在 /opt/software/ 目录下的安装包 apache-hive-1.2.2-bin.tar.gz 解压到 /opt/modules/hive 目录下

4170765-64a52d7dc9b984db.png

2. 加载 mysql 驱动包

链接:mysql-connector-java驱动包下载地址

step3: 下载 mysql 驱动包后,放入到 hive安装目录的 lib 目录下

输入 cd /hive/apache-hive-1.2.2-bin/lib 进入到 lib 目录

4170765-1ecfab6b87bb8458.png

输入 rz 弹出一个文件选择窗口,从本地选择mysql 驱动包上传到服务器

4170765-5a84a1d9a2ba7b25.png

上传完毕后,可在 lib 目录下,看到上传的 mysql-connector-java-5.1.27.jar 包

3. 配置 Hive 环境变量

step4:进入 /etc/profile 文件,配置环境变量

输入:sudo vim /etc/profile 进入到 profile 配置文件

4170765-75b31ac1f59fb30a.png

输入 i 键 进入编辑模式

输入 export HIVE_HOME=/opt/modules/hive/apache-hive-1.2.2-bin

export PATH=$PATH:$HIVE_HOME/bin:$HIVE_HOME/conf

/opt/modules/hive/apache-hive-1.2.2-bin 路径是hive安装的目录路径

4170765-3c420340d80351cc.png

输入 Esc 键,输入 :wq 保存并退出

step5:重新执行 profile 文件

输入 source /etc/profile 重新执行 profile 文件使其生效

4170765-ed866c74edce5dae.png

4. 修改 Hive 的 hive-env.sh 、hive-site.xml 和 hive-log4j.proprties 配置文件

step6:进入到 hive安装目录的 /conf 目录下

4170765-78ae94abad83cc1b.png

问题一:/conf 目录下木有hive-env.sh 、 hive-site.xml 和 hive-log4j.proprties,但是看到 hive-env.sh.template 、 hive-default.xml.template 和 hive-log4j.properties.template 文件

解决方法:可直接复制,并分别重命名为 hive-env.sh 、 hive-site.xml 和 hive-log4j.proprties

输入 cp hive-env.sh.template hive-env.sh

4170765-b1d2463a30a420b8.png

输入 cp hive-default.xml.template hive-site.xml

4170765-053bd81953c5051d.png

同上创建 hive-log4j.proprties 文件

step7:修改 hive-env.sh 文件

输入 vim hive-env.sh 编辑 hive-env.sh文件

输入 i 键 进入编辑模式

输入 export JAVA_HOME=/usr/local/java/jdk1.8.0_181

export HADOOP_HOME=/opt/modules/hadoop-2.2.0

export HIVE_HOME=/opt/modules/hive/apache-hive-1.2.2-bin

分别添加你安装的 java jdk 路径、hadoop路径和hive路径

4170765-f33bc1d694d41cdf.png

输入 Esc 键,输入 :wq 保存并退出

输入 source hive-env.sh 重新执行 hive-env.sh 文件使其生效

4170765-e4052cf478ed35b5.png

step8:在修改 hive-site.xml 前,先创建warehouse、tmp、log目录

进入到hive的安装目录下,本文是进入到 /opt/modules/hive/apache-hive-1.2.2-bin

输入 mkdir warehouse 存储表数据

mkdir tmp 存储临时文件

mkdir log 存储日志文件

4170765-1f95a0692c12fce9.png

step9:修改 hive-site.xml 文件

进入到 conf 目录下

输入 vim hive-site.xml 编辑 hive-site.xml 文件

输入 i 键 进入编辑模式

1)首先添加以下信息,配置 mysql 数据库相关内容

<property>

<name>javax.jdo.option.ConnectionURL</name>

<value>jdbc:mysql://localhost:3306/hivecreateDatabaseIfNotExist=true;characterEncoding=UTF-8

</value>

<description>JDBC connect string for a JDBC metastore</description>

</property>

<property>

<name>javax.jdo.option.ConnectionDriverName</name>

<value>com.mysql.jdbc.Driver</value>

<description>Driver class name for a JDBC metastore</description>

</property>

<property>

<name>javax.jdo.option.ConnectionUserName</name>

<value>root</value>

<description>username to use against metastore database</description>

</property>

<property>

<name>javax.jdo.option.ConnectionPassword</name>

<value>mysql数据库登录密码</value>

<description>password to use against metastore database</description>

</property>

2)修改 hive.metastore.warehouse.dir 配置

搜索 hive.metastore.warehouse.dir

先按 Esc 键退出编辑模式,然后输入 /hive.metastore.warehouse.dir

定位到 hive.metastore.warehouse.dir 位置,按 i 键进入编辑

修改 value 值,填写你所创建的 warehouse 的路径,配置数据目录

4170765-2a0884693301db3d.png

3)修改 hive.exec.scratchdir 配置

按 2)的修改步骤,修改临时文件路径

4170765-e01b2608591a18bc.png

4)修改 hive.querylog.location 配置

按 2)修改步骤,修改日志路径

4170765-6282b0a9e9769ae3.png

5)修改 system:java.io.tmpdir 的路径

搜索 system:java.io.tmpdir ,定位到多处含有 system:java.io.tmpdir 的地方(搜索功能按小写 n可切换到下一处;按小写 N 可切换到上一处)

全部替换成 /opt/modules/hive/apache-hive-1.2.2-bin/tmp(这个是我存放临时文件的路径,替换成你所创建的)

4170765-d9f79d22bc1c829a.png

修改完以上全部内容后,输入 Esc 键,输入 :wq 保存并退出

step10:修改 hive-log4j.proprties 文件

输入 vim hive-log4j.properties

修改 log.dir 属性,配置存放log文件路径,其他属性默认即可

hive.log.dir=/opt/modules/hive/apache-hive-1.2.2-bin/log/${username}

4170765-9a2828bd644f6aab.png

五、Hive 启动

step11: 启动 hadoop

输入 start-all.sh

4170765-8cd59d547ad63f5d.png

输入 jps 查看是否启动成功

4170765-35bc203220542183.png

step12: 启动 mysql

输入 service mysqld start

step13: 启动 hive

输入 hive

启动 hive 后,就可以进行操作了

注:hive操作命令基本与mysql一致


参考链接:hadoop之hive的安装与部署

Linux 开发环境安装总结6-(Hive安装)

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇执行Hive语句报错:FAILED: Error.. 下一篇hive:Access denied for user ..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目