Hive

HIVE简介

1.hive是一个数据仓库存储工具,也是数据处理工具

2.hive存储的数据,是放在hdfs上的

3.hive可以用hive sql(hql)进行数据处理

4.hive sql实际上内部回执行hadoop的mapreduce

4.1hive早期版本 只要执行hql就会执行mapreduce ,现在的新版本比较简单的hql就不会执行mapreduce。

4.2 早期版本hql不支持插入数据(insert),现在的新版本已经支持,但没插入一条数据就会产生一个新文件

5.hive的源数据是放在mysql(或其他)里面的

6.hive只需按照一个节点就可以了,(mysql在初学阶段最好和hive安装在同一节点)

HIVE安装

1:安装mysql

安装mysqlserver:

yum install mysql-server

设置mysql初始密码:

/usr/bin/mysqladmin -u root password 'oracle'

启动mysql:

service mysqld start

进入mysql:

mysql -uroot -p

然后输入密码

修改密码:

mysql> update user set password = password('oracle') WHERE user = 'root'; 

mysql> FLUSH PRIVILEGES;             这一句必须要执行(忘了就麻烦了)

 

 

注意:如果你的mysql和hive安装不是一台机器 就必须还要执行授权命令 授权给安装hive的那一台机器

grant all  PRIVILEGES  on  *.*  to 'root'@'linux2' identified by 'oracle'

grant all  PRIVILEGES  on  *.*  to 'root'@'linux3' identified by 'oracle'

grant all  PRIVILEGES  on  *.*  to 'root'@'linux4' identified by 'oracle'

FLUSH PRIVILEGES;

 2.把安装的文件上传到某一个节点

将 apache-hive-1.2.1-bin.tar.gz 和 mysql-connector-java-5.1.45.tar.gz 上传到Hadoop集群中节点linux1,分别解压。

下图是解压以后的目录:

3.配置环境变量

vi /etc/profile

使配置生效

source /etc/profile

使用 echo $HIVE_HOME查看配置是否生效

 

4.配置 配置文件

进入hive解压目录的conf目录

4.1 hive-site.xml

hive文件给出了个模板,但在实际中可以简化很多配置参数

以下是我的配置文件

 1 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 2 <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
 3 <configuration>
 4 
 5 
 6   
 7   <!-- hive.metastore.warehouse.dir  hadoop -->
 8   <property>
 9     <name>hive.metastore.warehouse.dir</name>
10     <value>/root/app/hadoop/hive/warehouse</value>
11     <description>location of default database for the warehouse</description>
12   </property>
13   
14   
15  <!-- ConnectionPassword -->
16   <property>
17     <name>javax.jdo.option.ConnectionPassword</name>
18     <value>oracle</value>
19     <description>password to use against metastore database</description>
20   </property>
21   
22   
23   <!--  ConnectionURL  -->
24   <property>
25     <name>javax.jdo.option.ConnectionURL</name>
26     <value>jdbc:mysql:///hive</value>
27     <description>JDBC connect string for a JDBC metastore</description>
28   </property>
29  
30   
31   
32   <!-- ConnectionDriverName -->
33   <property>
34     <name>javax.jdo.option.ConnectionDriverName</name>
35     <value>com.mysql.jdbc.Driver</value>
36     <description>Driver class name for a JDBC metastore</description>
37   </property>
38   
39   
40   <!-- ConnectionUserName -->
41   <property>
42     <name>javax.jdo.option.ConnectionUserName</name>
43     <value>root</value>
44     <description>Username to use against metastore database</description>
45   </property>
46   
47   
48  
49 </configuration>

4.2配置hive-env.sh

5.替换jline包和上传驱动

因为hadoop包中的jline包版本比较旧,需要用hive包中的jline包替换

cp apache-hive-1.2.1-bin/lib/jline-2.12.jar hadoop-2.6.4/share/hadoop/yarn/lib/

 上传驱动:

 cp mysql-connector-java-5.1.45/mysql-connector-java-5.1.45-bin.jar apache-hive-1.2.1-bin/lib/

 6.启动hadoop和mysql

关闭防火墙

start-all.sh.

service mysqld start

7.启动hive

命令:hive

 

posted @ 2018-01-08 15:10  啸傲风月  阅读(226)  评论(0编辑  收藏  举报