hive安装部署

旧巷老猫 提交于 2021-02-16 20:43:45

1、 准备环境


1, 软件准备

Java-- jdk-8u121-linux-x64.tar.gz

Hadoop--hadoop-2.7.4.tar.gz (jdk1.7会报错)

Hive-- apache-hive-1.2.1-bin.tar.gz

本系列教程所有jar包,请关注微信公众号 Spark高级玩法,输入software获取。

Centos 6.5是本文采用的操作系统

2, 安装mysql

yum install mysql-server -y

启动mysql

service mysqld status

service mysqld start

    加上账户密码

mysqladmin -u root password '123456'

添加开机启动

chkconfig mysqld on

chkconfig --list |grep mysqld

    测试

mysql -uroot -p123456

整理认证权限

名字叫mysql的数据库中假如需要的认证。

重点强调一定要执行: flush privileges;


二,安装Hive


1. 本地安装测试

配置好HIVE_HOME等环境变量

# Hive

export HIVE_HOME=/opt/modules/hive-1.2.1

export HIVE_CONF_DIR=$HIVE_HOME/conf

export PATH=$PATH:$HIVE_HOME/bin

1) 配置hive-site.xml(需要创建)


<configuration>

    <property>

    <name>javax.jdo.option.ConnectionURL</name>

    <value>jdbc:mysql://Luffy.OnePiece.com/metastore_db?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>root</value>

        <description>username to use against metastore database</description>

    </property>


    <property>

        <name>javax.jdo.option.ConnectionPassword</name>

        <value>123456</value>

        <description>password to use against metastore database</description>

    </property>

    <property>

        <name>hive.metastore.uris</name>

        <value>thrift://Luffy.OnePiece.com:9083</value>

</property>

</configuration>




2) 添加数据库驱动

mysql-connector-java-5.1.28.jar添加到$HIVE_HOME/lib目录下


3) 创建数据存储位置

此步骤,要先启动hadoop

创建数据仓库的存储位置,并赋予权限

4) 显示查询的表头

为了,能看到表的数据库和表头信息需要在配置文件(hive-site.xml)里面,加入


<property>

       <name>hive.cli.print.header</name>

       <value>true</value>

   </property>

   <property>

        <name>hive.cli.print.current.db</name>

        <value>true</value>

    </property>




当然,还存在其它配置方式,这个方式一劳永逸。

5) 启动metastore

nohup hive --service metastore   >/dev/null 2>&1 &

Hive元数据表名和作用简介


2.测试Hive

创建表

create table student(id int,name string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ' ';

导入数据

load data local inpath '/opt/modules/hive-1.2.1/stu.txt' into table student;


经过MR的执行


三.总结

    HIVE分布式部署,很简单,只需要将相应配置和依赖拷贝到其它节点即可。Hive目前来说,在大数据领域还是数据仓库的标配。掌握,Hive的原理,调优,尤其是数据倾斜还是很有帮助,当然,大部分调优还是要牢牢掌握MR的调优,毕竟人家是底层呀。

                

        推荐阅读:

        1,Hadoop伪分布式集群安装部署

        2,Spark部署模式另类详解

        3,Hbase源码系列之BufferedMutator的Demo和源码解析

        4,Hbase源码系列之源码前奏hbase:meta表相关详细介绍




关于Spark高级玩法

kafkahbasespark,Flink等入门到深入源码,spark机器学习,大数据安全,大数据运维,请关注浪尖公众号,看高质量文章。

更多文章,敬请期待



本文分享自微信公众号 - 浪尖聊大数据(bigdatatip)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!