macOS下 Hive 2.x 的安装与配置

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的[SQL]查询功能,可以将SQL语句转换为MapReduce任务进行运行。其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。

1 简介

Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的[SQL]查询功能,可以将SQL语句转换为MapReduce任务进行运行。其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。

它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在 Hadoop 中的大规模数据的机制。Hive 定义了简单的类 SQL 查询语言,称为 HQL,它允许熟悉 SQL 的用户查询数据。同时,这个语言也允许熟悉 MapReduce 开发者的开发自定义的 mapper 和 reducer 来处理内建的 mapper 和 reducer 无法完成的复杂的分析工作。

Hive 没有专门的数据格式。 Hive 可以很好的工作在 Thrift 之上,控制分隔符,也允许用户指定数据格式。

Apache Hive起初由[Facebook]开发,目前也有其他公司使用和开发Apache Hive,例如[Netflix]等。亚马逊公司也开发了一个定制版本的Apache Hive,亚马逊网络服务包中的Amazon Elastic MapReduce包含了该定制版本。

2 环境

  • 操作系统

  • Hadoop版本
    hadoop-2.6.0-cdh5.7.0
  • MySQL版本
  • mysql-connector-java
    5.1.37
  • Hive版本
    2.3.4

3 安装Hive

3.1 先确保已经正确安装并运行了hadoop

3.2 下载Hive安装包

官网下载

将安装包移动至:
../hadoop-2.6.0-cdh5.7.0/ 目录下,此目录是本地安装Hadoop的目录

移动至此处后,解压缩

  • tar -xzvf apache-hive-2.3.4-bin.tar.gz

并将解压后的文件名改为hive,方便配置。

例如本机Hive的安装路径为

3.3 配置系统环境变量

3.3.1 修改~/.bash_profile

// 或者修改/etc/profile文件

vim ~/.bash_profile

添加内容

export HIVE_HOME=/Volumes/doc/hadoop-2.6.0-cdh5.7.0/hive
export PATH=$PATH:$HIVE_HOME/bin:$HIVE_HOME/conf

退出保存后,在终端输入,使环境变量立即生效

source ~/.bash_profile

4 修改Hive配置

4.1 新建文件hive-site.xml

  • 在 ../hive/conf下
  • 添加hive-site.xml内容

4.2 hive-env.sh

  • 复制hive-env.sh.template为hive-env.sh
  • 修改hive-env.sh内容

5 MySQL 权限配置

5.1 给用户赋予权限

  • 以使得该用户可以远程登录数据库:

如果上面查询到有信息,但host为localhost或其他值,就需要根据实际需求来更新表信息

grant all privileges on 库名.表名 to '用户名'@'IP地址' identified by '密码' with grant option;
flush privileges;

库名:要远程访问的数据库名称,所有的数据库使用“*”

表名:要远程访问的数据库下的表的名称,所有的表使用“*”
用户名:要赋给远程访问权限的用户名称
IP地址:可以远程访问的电脑的IP地址,所有的地址使用“%”
密码:要赋给远程访问权限的用户对应使用的密码

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

使改变立即生效:

FLUSH PRIVILEGES;

6 向/usr/hadoop/hadoop-2.6.2/hive/lib中添加mySql连接库:

6.1 官网下载连接驱动包

6.2 将下好的包解压缩

  • 解压后,将此文件夹下mysql-connector-java-8.0.15.jar
  • 复制到../hive/lib下
    image.png

注意:需要给/tmp文件夹设置写权限,同时确保 hadoop不在安全模式下,可以执行此命令使hadoop退出安全模式:hadoop dfsadmin -safemode leave

7 启动Hive

在命令行运行 hive 命令时必须保证HDFS 已经启动。可以使用 start-dfs.sh 脚本来启动 HDFS。

7.1 如果是第一次启动Hive,则需要先执行如下初始化命令

schematool -dbType mysql -initSchema

7.2 启动Hive

# 完成基本的环境配置!

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
3月前
|
SQL 数据库 HIVE
记录hive数据库远程访问配置问题
记录hive数据库远程访问配置问题
114 0
|
5月前
|
SQL 关系型数据库 MySQL
Mac下安装hive
Mac下安装hive
168 0
|
3天前
|
SQL HIVE
Hive【基础知识 04】【Hive 属性配置的三种方式及配置的优先级说明】
【4月更文挑战第7天】Hive【基础知识 04】【Hive 属性配置的三种方式及配置的优先级说明】
11 0
|
2月前
|
数据安全/隐私保护 iOS开发 MacOS
|
3月前
|
JavaScript 前端开发 iOS开发
【macOS 系列】如何在mac下安装nvm实现多版本nodejs
【macOS 系列】如何在mac下安装nvm实现多版本nodejs
55 0
|
3月前
|
SQL 分布式计算 Java
linux安装Hive详细步骤
【1月更文挑战第2天】linux安装Hive详细步骤
145 0
|
4月前
|
SQL 分布式计算 关系型数据库
Hive安装
Hive安装
45 1
|
4月前
|
SQL Java Shell
Hive【非交互式使用、三种参数配置方式】
Hive【非交互式使用、三种参数配置方式】
|
4月前
|
SQL 分布式计算 Hadoop
Hadoop学习笔记(HDP)-Part.15 安装HIVE
01 关于HDP 02 核心组件原理 03 资源规划 04 基础环境配置 05 Yum源配置 06 安装OracleJDK 07 安装MySQL 08 部署Ambari集群 09 安装OpenLDAP 10 创建集群 11 安装Kerberos 12 安装HDFS 13 安装Ranger 14 安装YARN+MR 15 安装HIVE 16 安装HBase 17 安装Spark2 18 安装Flink 19 安装Kafka 20 安装Flume
104 1
Hadoop学习笔记(HDP)-Part.15 安装HIVE
|
5月前
|
SQL 分布式计算 关系型数据库
Hive教程(02)- Hive安装
Hive教程(02)- Hive安装
56 0