Hive环境搭建与测试

概述:本文介绍Hive基本环境的搭建,并实现塞缪尔·厄尔曼青春》的词频统计

1、下载和HDFS版本匹配的Hive并解压

http://archive.cloudera.com/cdh5/cdh/5/hadoop-2.6.0-cdh5.7.0.tar.gz
http://archive.cloudera.com/cdh5/cdh/5/hive-1.1.0-cdh5.7.0.tar.gz
#注意:尾号一致

2、安装MySQL

步骤包括:下载并解压MySql、目录重命名、创建用户和组、创建配置文件、初始化数据库、修改用户名和密码

3、安装JDK和Hive

tar -zxvf software/jdk-8u201-linux-x64.tar.gz -C app/
tar -zxvf software/hive-1.1.0-cdh5.10.0.tar.gz -C app/

4、环境变量配置

vi .bash_profile
#以下为所有变量
export PATH
export HIVE_HOME=/root/app/hive-1.1.0-cdh5.10.0
export PATH=$HIVE_HOME/bin:$PATH
export JAVA_HOME=/root/app/jdk1.8.0_201
export PATH=$JAVA_HOME/bin:$PATH
export HADOOP_HOME=/root/app/hadoop-2.6.0-cdh5.7.0
export PATH=$HADOOP_HOME/bin:$PATH
​
#使环境变量生效
source .bash_profile
#检查环境变量
echo $HIVE_HOME

5、Hive配置

#将mysql驱动包导入Hive lib下
cp software/mysql-connector-java-5.1.47-bin.jar app/hive-1.1.0-cdh5.10.0/lib
cd app/hive-1.1.0-cdh5.10.0/conf/
​
cp hive-env.sh.template cp hive-env.sh
cp hive-env.sh
#新增
HADOOP_HOME=/root/app/hadoop-2.6.0-cdh5.7.0

增加文件hive-site.xml

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
        <name>javax.jdo.option.ConnectionURL</name>
        <value>jdbc:mysql://localhost:3306/sparksql?createDatabaseIfNotExist=true</value>
        <description>JDBC connect string 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>root</value>
       <description>password to use against metastore database</description>
    </property>
</configuration>

6、启动Hive

cd /root/app/hive-1.1.0-cdh5.10.0/bin
./hive
​
#检查数据库表建立情况
mysql -uroot -proot
show databases;
use sparksql;
show tables;

7、Hive的基本使用

(1)创建表

#hive
create table hive_wordcount(context string);
#mysql 查看创建的表和字段
SELECT * FROM TBLS;
SELECT * FROM COLUMNS_V2;

(2)加载数据到Hive表

#hive
LOAD DATA LOCAL INPATH '/root/app/hadoop-2.6.0-cdh5.7.0/bin/Youth.txt' INTO TABLE hive_wordcount;
SELECT * FROM hive_wordcount;

(3)词频统计

SELECT word,count(1) from hive_wordcount lateral view explode(split(context,' ')) wc as word group by word;
​
#其中:lateral view explode将每行记录按照指定分隔符拆解

作业提交情况:

部分统计结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值