大数据求索(4):Hive安装和使用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wen_fei/article/details/82947603

Hive安装和使用

Hive环境搭建

  1. Hive下载

    wget https://archive.cloudera.com/cdh5/cdh/5/hive-1.1.0-cdh5.7.0.tar.gz

  2. 解压

    tar -zxvf hive-1.1.00cdh5.7.0.tar.gz -C ~/APP/Hadoop

  3. 环境配置

    系统环境变量配置(vim ~/.bash_profile)

    export HIVE_HOME=/home/hadoop/APP/Hadoop/hive-1.1.0-cdh5.7.0

    export PATH=$HIVE_HOME/bin:$PATH

  4. 文件配置

    因为数据存放在关系型数据库里,所以需要安装一个mysql

    hive-env.sh

    修改$HADOOP_HOME目录

    hive-site.xml

    <property>
    	<name>javax.jdo.option.ConnectionURL</name>
    	<value>jdbc:mysql://localhost:3306/sparksql?createDatabaseIfNotExist=true</value>
    </property>
    
    <property>
    	<name>javax.jdo.option.ConnectionDriverName</name>
        <value>com.mysql.jdbc.Driver</value>
    </property>
    
    <property>
    	<name>javax.jdo.option.ConnectionUserName</name>
    	<value>root</value>
    </property>
    
    <property>
    	<name>javax.jdo.option.ConnectionPassword</name>
    	<value>root</value>
    </property>
    
  5. 拷贝mysql驱动到$HIVE_HOME/lib

    这个可以到maven仓库去下载下来拷贝过去即可

  6. 启动hive
    $HIME_HOME/bin/hive

    $bin/hive (需先启动集群)

    启动以后,进入hive shell
    可以去查看mysql数据库,发现里面已经多了刚才配置文件里面写的sparksql数据库,show tables可以发现多了很多表,这些表是hive启动帮助创建的

Hive 使用

  1. 创建表

    create table hive_wordcount(context string);
    show tables;
    

    可以发现多了一张表

    切换到mysql数据库里面,查看表TBLS(原本是空的),

    select * from TBLS;
    

    可以发现多了一行数据,包括ID、创建时间、拥有者、表名等信息

    查看表COLUMNS_V2,可以看到字段信息

    select * from COLUMNS_V2;
    
  2. 加载数据到hive表

    可以从本地或者HDFS加载

    load data local(如果从HDFS去掉local) inpath '/home/hadoop/data/data.txt' into table hive_wordcount;
    
    select * from hive_wordcount;
    

    可以看到数据已经加载到表里了。

  3. hive进行词频统计

    这里需要用到一个函数 :

    load view explode(): 把每行记录按照指定分隔符进行拆解

    select word, count(1) from hive_wordcount lateral view explode(split(context, ' ')) wc as word group by word;
    

    可以看到结果如下:

    hive-2

    如果我们这时候去刷新yarn的web界面,可以看到hive提交了mr job到平台去运行,相当于帮助我们把sql语句转换成了mr任务,并在yarn运行
    hive-1

    但是hive更加简单,只要会使用sql即可

猜你喜欢

转载自blog.csdn.net/wen_fei/article/details/82947603
今日推荐