Hive1.2.2搭建记录

一、什么是Hive?

  Hive是一个数据仓库基础工具在Hadoop中用来处理结构化数据。它架构在Hadoop之上,总归为大数据,并使得查询和分析方便。并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。术语“大数据”是大型数据集,其中包括体积庞大,高速,以及各种由与日俱增的数据的集合。使用传统的数据管理系统,它是难以加工大型数据。因此,Apache软件基金会推出了一款名为Hadoop的解决大数据管理和处理难题的框架。

  HIve的架构

   Hive的工作原理

二、Hive的安装

  在Hadoop 集群搭建完毕的前提下:

  下载Hive1.2.2的安装包,不要下载过高版本的,考虑到兼容问题

  apache的下载官网:mirror.bit.edu.cn/apache/

  将apache-hive-1.2.2-bin.tar.gz发送到node1

  

tar -zxvf apache-hive-1.2.2-bin.tar.gz
mv apache-hive-1.2.2-bin /usr/local/hive1.2.2

  接下来进行环境配置:

1、在  /etc/profile  中添加以下配置

export HIVE_HOME=/usr/local/hive1.2.2
export PATH=$PATH:$HIVE_HOME/bin

  source /etc/profile 刷新设置

2、验证mysql是否安装

  查找:rpm -qa|grep -i mysql

  卸载:yum -y remove <file>

  在centOS7中使用mariadb替代了mysql,与mysql的功能一样

所以有两种安装mysql的方法:

  2.1、安装mariadb,大小59 M。

     yum install mariadb-server mariadb

      mariadb数据库的相关命令是:
        systemctl start mariadb  #启动MariaDB
        systemctl stop mariadb  #停止MariaDB
        systemctl restart mariadb  #重启MariaDB
        systemctl enable mariadb  #设置开机启动
      所以先启动数据库
         systemctl start mariadb
      然后就可以正常使用mysql了

  2.2、官网下载安装mysql-server

  按照以下步骤进行安装:

      wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
      rpm -ivh mysql-community-release-el7-5.noarch.rpm
      yum install mysql-community-server
    安装成功后重启mysql服务。
      service mysqld restart

    初次安装mysql,root账户没有密码

  

  这里的数据库只需要设置用户密码和远程登陆就可以了

  进入mysql>之后use mysql;并执行以下命令:

create user 'root'@'%' identified by '123456';
grant all privileges on *.* to root@'%'identified by '123456';
update user set password=PASSWORD('123456') where user='root';
flush privileges;

 2.3、Hive的相关设置

  进入$HIVE_HOME/conf目录下,分别初始化hive-env.sh和hive-site.xml两个文件

cp -a hive-default.xml.template hive-site.xml
cp -a hive-env.sh.template hive-env.sh

  首先修改hive-env.sh:

  在最后添加上hadoop的目录:export HADOOP_HOME=/usr/local/hadoop2.8.5

  然后修改hive-site.xml文件:

    (主要是数据库的配置)

vi hive-site.xml

  之后按下“/”后面跟上URL进行搜索(其他几个同样用搜索):

分别修改如下:

搜索关键字:/URL  /Driver  /UserName  /Password  (注意下面的描述中有metastore)

<property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://node1/hive</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>

  

  后面有个错误:Hive启动时,报错RelativepathinabsoluteURI:${system:java.io.tmpdir}

  这里可以提前配置,免得再回头(新建文件夹,修改配置)

    修改 hive-site.xml 中所有包含${system:Java.io.tmpdir}字段的 value 即路径(vim下 / 表示搜索,后面跟你的关键词,比如搜索 hello,则为/hello, 再回车即可),你可以自己新建一个目录来替换它,例如/home/hive/iotmp.
    我这边把hive-site.xml中所有出现${system:Java.io.tmpdir}的地方都替换成了:/usr/local/hive1.2.2/iotemp

 2.4、这里补上连接所用的jar包

  mysql-connector-java-5.1.39-bin.jar  这是连接所用的jar包

  下载后放到 hive1.2.2的lib目录下即可

3、可以先启动进行验证配置

  进入hive1.2.2目录下的bin文件夹

  执行  ./hive  即可启动hive程序

原文地址:https://www.cnblogs.com/null-/p/10009837.html