Hive 2.3.4 安裝及配置

栏目: 服务器 · 发布时间: 5年前

内容简介:Hive选择将压缩包复制至想要的安装位置,我的做法是复制到跟hadoop安装的同一个目录下。

Hive是一个数据仓库基础 工具 在Hadoop中用来处理结构化数据。它架构在Hadoop之上,总归为大数据,并使得查询和分析方便。并提供简单的 sql 查询功能,可以将sql语句转换为MapReduce任务进行运行。

Hive 2.3.4 安裝及配置

前期工作

  • 安装JDK

  • 安装Hadoop

  • 安装MySQL

下载并安装Hive

下载

Hive 下载地址官网

选择 apache-hive-2.3.4-bin.tar.gz 进行下载。

安装

将压缩包复制至想要的安装位置,我的做法是复制到跟hadoop安装的同一个目录下。

sudo mv apache-hive-2.1.1-bin.tar.gz /usr/local/Cellar/hadoop
cd /usr/local/Cellar/hadoop
sudo tar -xzvf apache-hive-2.3.4-bin.tar.gz    ##解压

设置系统环境变量

编辑bash_profile文件 vi .bash_profile

添加以下内容。

# Hive
export HIVE_HOME=/usr/local/Cellar/hadoop/apache-hive-2.3.4-bin
export PATH=$PATH:$HIVE_HOME/bin

使环境变量生效: source .bash_profile

配置文件hive.site.xml

进入 Hive/conf 文件夹 复制示例配置文件并改名为 hive.site.xml

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

在开头添加如下配置。

<property>
   <name>system:java.io.tmpdir</name>
   <value>/tmp/hive/java</value>
</property>
<property>
   <name>system:user.name</name>
   <value>${user.name}</value>
</property>

创建及配置HDFS文件夹

创建

在 Hive 中创建表之前需要创建以下 HDFS 目录并给它们赋相应的权限。

hdfs dfs -mkdir -p /user/hive/warehouse
hdfs dfs -mkdir -p /user/hive/tmp
hdfs dfs -mkdir -p /user/hive/log
hdfs dfs -chmod 777 /user/hive/warehouse
hdfs dfs -chmod 777 /usr/hive/tmp
hdfs dfs -chmod 777 /usr/hive/log

创建完成后可以使用 hdfs dfs -ls /hive 查看是否已经成功新建文件夹。

配置

打开刚刚准备好的 hive-site.xml 配置文件,把刚刚新建的HDFS文件夹的路径添加到配置文件中去。

<property>
    <name>hive.exec.scratchdir</name>
    <value>hive/tmp</value>
    <description>HDFS root scratch dir for Hive jobs which gets created with write all (733) permission. For each connecting user, an HDFS scratch dir: ${hive.exec.scratchdir}/<username> is created, with ${hive.scratch.dir.permission}.</description>
  </property>
  <property>
    <name>hive.metastore.warehouse.dir</name>
    <value>/hive/warehouse</value>
    <description>location of default database for the warehouse</description>
  </property>
<property>
    <name>hive.querylog.location</name>
    <value>/hive/log</value>
    <description>Location of Hive run time structured log file</description>
  </property>

创建及配置Mysql

创建Hive数据库

假定你已经安装好MySQL。下面需要创建一个 hive 数据库用来存储 Hive 元数据

打开 Mysql 服务,并以root用户登入。

mysql.server start
mysql -u root -p # 回车后输入密码 若无密码则使用 mysql -u root

创建用户名

进入mysql后,创建一个 hive 数据库用来存储 Hive 元数据,且数据库访问的用户名和密码都为hadoop。

CREATE DATABASE hive; 
USE hive; 
CREATE USER 'hadoop'@'localhost' IDENTIFIED BY 'hadoop';
GRANT ALL ON hive.* TO 'hive'@'localhost' IDENTIFIED BY 'hadoop'; 
GRANT ALL ON hive.* TO 'hive'@'%' IDENTIFIED BY 'hadoop'; 
FLUSH PRIVILEGES; 
quit;
``` 
### 配置
将刚刚创建的数据库及用户名和密码写入配置文件。
``` xml
<property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true&characterEncoding=UTF-8&useSSL=false</value>
</property>
<property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
</property>
<property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>hadoop</value>
</property>
<property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>hadoop</value>
</property>

配置JDBC

由于需要使用 Java 连接Mysql数据库,所以需要配置MySQL Connector。我这里使用的是mysql-connector-java-5.1.39-bin版本 下载地址 。并将它复制进 $HIVE_HOME/lib 路径下

启动及测试

启动HDFS

使用Hive之前,请先确保HDFS已经启动。可以使用 start-dfs.sh 脚本来启动 HDFS。

Mysql初始化

从 Hive 2.1 版本开始, 我们需要先运行 schematool 命令来执行初始化操作。

schematool -dbType mysql -initSchema

运行后终端将会显示如下信息

Hive 2.3.4 安裝及配置

使用Hive CLI

要使用 Hive CLI(Hive command line interface), 可以在终端输入 Hive ,便可以进入。

启动信息如下:

Hive 2.3.4 安裝及配置

创建一个table

CREATE TABLE pokes (foo INT, bar STRING);

show tables和desc pokes 显示信息如下

Hive 2.3.4 安裝及配置

在HDFS中显示如下

Hive 2.3.4 安裝及配置

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

码出高效:Java开发手册

码出高效:Java开发手册

杨冠宝、高海慧 / 电子工业出版社 / 2018-10 / 99.00元

《码出高效:Java 开发手册》源于影响了全球250万名开发工程师的《阿里巴巴Java开发手册》,作者静心沉淀,对Java规约的来龙去脉进行了全面而彻底的内容梳理。《码出高效:Java 开发手册》以实战为中心,以新颖的角度全面阐述面向对象理论,逐步深入地探索怎样成为一位优秀开发工程师。比如:如何驾轻就熟地使用各类集合框架;如何得心应手地处理高并发多线程问题;如何顺其自然地写出可读性强、可维护性好的......一起来看看 《码出高效:Java开发手册》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

URL 编码/解码
URL 编码/解码

URL 编码/解码

SHA 加密
SHA 加密

SHA 加密工具