Hive 安装教程

33 篇文章 0 订阅
21 篇文章 1 订阅

1. 简单介绍

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

2. 依赖条件

  • Hive 依赖 Hadoop,所以在安装 Hive 之前,必须安装 Hadoop。安装 Hadoop 请参考上一篇博客:Hadoop 安装教程
  • MySQL 用于存储 Hive 的元数据(也可以用 Hive 自带的嵌入式数据库 Derby,但是 Hive 的生产环境一般不用 Derby)。MySQL 的安装可以参考:部署 MySQL 主从模式,这里只需要安装 MySQL 单机版即可,如果想保证高可用的化,也可以部署 MySQL 主从模式;
  • 下表是具体安装组件的具体信息:

    softwareversionhost
    Hadoophadoop-2.6.0-cdh5.4.7hw001, hw002, hw003
    MySQLMySQL-5.5.45hw001
    Hivehive-1.1.0-cdh5.4.7hw001

3. 配置 MySQL

-- 创建 hive 数据库
mysql> CREATE DATABASE hive;

-- 创建 hive 用户,并赋予访问 hive 数据库的权限
mysql> GRANT ALL PRIVILEGES ON hive.* TO 'hive'@'localhost' IDENTIFIED BY 'hive';
mysql> FLUSH PRIVILEGES;

-- 设置 binary log 的格式:
mysql> set global binlog_format=MIXED;

4. 下载 Hive 并配置环境变量

-- 下载并解压 Hive
su - hadoop
wget http://archive-primary.cloudera.com/cdh5/cdh/5/hive-1.1.0-cdh5.4.7.tar.gz
tar xzvf hive-1.1.0-cdh5.4.7.tar.gz -C /home/hadoop

-- 在 .bashrc 或是 .bash_profile 文件中增加以下设置:
export HIVE_HOME=/home/hadoop/hive-1.1.0-cdh5.4.7
export PATH=$PATH:$HIVE_HOME/bin

-- 用 source 命令使之生效。

5. 修改配置文件

-- cat hive-1.1.0-cdh5.4.7/conf/hive-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
    <property>
      <name>hive.server2.thrift.port</name>
      <value>10000</value>
    </property>

    <property>
      <name>hive.server2.thrift.bind.host</name>
      <value>hw001</value>
    </property>

    <property>
      <name>hive.server2.authentication</name>
      <value>NONE</value>
      <description>
        Client authentication types.
           NONE: no authentication check
           LDAP: LDAP/AD based authentication
           KERBEROS: Kerberos/GSSAPI authentication
           CUSTOM: Custom authentication provider
                   (Use with property hive.server2.custom.authentication.class)
      </description>
    </property>

    <property>
      <name>hive.server2.enable.doAs</name>
      <value>true</value>
    </property>

    <property>
      <name>javax.jdo.option.ConnectionURL</name>
      <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</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>hive</value>
      <description>username to use against metastore database</description>
    </property>

    <property>
      <name>javax.jdo.option.ConnectionPassword</name>
      <value>hive</value>
      <description>password to use against metastore database</description>
    </property>
</configuration>

6. 下载 mysql jdbc jar 包

wget http://cdn.mysql.com//Downloads/Connector-J/mysql-connector-java-5.1.37.tar.gz
tar xvzf mysql-connector-java-5.1.37.tar.gz
cp mysql-connector-java-5.1.37/mysql-connector-java-5.1.37-bin.jar $HIVE_HOME/lib

7. 启动 hive1

./bin/hive

Logging initialized using configuration in file:/home/hadoop/hive-1.1.0-cdh5.4.7/conf/hive-log4j.properties
WARNING: Hive CLI is deprecated and migration to Beeline is recommended.
hive> show databases;
OK
default
Time taken: 0.732 seconds, Fetched: 1 row(s)
hive> quit;

8. 启动 hiveserver2

-- 启动 hive server
nohup hive --service hiveserver2 &

-- 启动客户端(不需要用户名密码)
$ beeline 
Beeline version 1.1.0-cdh5.4.7 by Apache Hive
beeline> !connect jdbc:hive2://hw001:10000
scan complete in 3ms
Connecting to jdbc:hive2://hw001:10000
Enter username for jdbc:hive2://hw001:10000: 
Enter password for jdbc:hive2://hw001:10000: 
Connected to: Apache Hive (version 1.1.0-cdh5.4.7)
Driver: Hive JDBC (version 1.1.0-cdh5.4.7)
Transaction isolation: TRANSACTION_REPEATABLE_READ
0: jdbc:hive2://hw001:10000> show tables;
+------------------------+--+
|        tab_name        |
+------------------------+--+
| historydata_20_23      |
| historydata_20_23_col  |
| tmp_1                  |
| tmp_2                  |
| years                  |
+------------------------+--+
5 rows selected (0.33 seconds)
0: jdbc:hive2://hw001:10000>

9. 安装完毕。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值