一 Hive概述
Hive是由Facebook开源用于解决海量结构化日志的数据统计
Hive是基于Hadoop框架的一个数据仓库分析工具,这里对于数据仓库,何为数据仓库?mysql,orical,sqlserver我们叫这些为数据库,所谓数据仓库就是在这个数据仓库中这些数据库都包含了进去。Hive既然是基于Hadoop的,那么也就意味着启动Hive之前必须要启动Hadoop,Hive可以将结构化的数据映射成为一张表格,并且提供类sql的语法,他是一个分析数据的框架,数据本身存储在HDFS上,数据的操作以mapreduce形式执行,表的元数据存储在mysql中。
学习Hive的要点:
-
Hive是一个工具,安装只需要一台即可。
-
Hive的核心是将hql与mapreduce相互转换。
-
HIve是针对数据仓库提出的一款数据分析的工具,数据仓库是读多写少的。
二 Hive的下载安装
2.1 hive下载
hive的网址:http://hive.apache.org/
点击左侧DOWNLOADS进入下载页面:
点击上图Download a release now选择对应版本下载,尽量老版本,稳定
2.2 安装配置
(1)使用xftp工具将下载好的hive上传到hadoop102机器上
(2)解压hive的tar包
tar -zxvf apache-hive-1.2.1-bin.tar.gz -C /opt/module
(3)配置Hive的环境变量
vim /etc/profile
添加如下:
##HIVE_HOME
export HIVE_HOME=/opt/module/apache-hive-1.2.1-bin
export PATH=$PATH:$HIVE_HOME/bin
最后切记source /etc/profile使其生效
(4)配置hive-env.sh
进入hive的conf目录下
将hive-env.sh.template名称改为hive-env.sh:mv hive-env.sh.template hive-env.sh
vim hive-env.sh
修改如下:
export HADOOP_HOME=/opt/module/hadoop-2.7.2 基于hadoop'的框架,肯定要告诉它hadoop在哪
export HIVE_CONF_DIR=/opt/module/hive/conf 配置hive的配置文件地址,就是安装目录的那个conf
三 Hive的启动
3.1 启动Hadoop
sbin/start-dfs.sh
sbin/start-yarn.sh
3.2准备两个文件夹
进入hadoop文件下 bin/hdfs dfs -mkdir /tmp
bin/hdf dfs -mkdir -p /user/hive/warehouse
关于tmp,我进去看过,感觉就是个临时文件,具体干什么的我也没有搞清楚,旁边也没有大神可以询问
关于warehouse,这个我知道,Hive是一个工具,他可以建立表的元数据,前面也提过它存储在HDFS上,具体的位置就是这个warehouse
3.3Hive的基本操作
前面说Hive是一个数据分析的工具,牢记工具二字,它不是像hadoop和zookeeper一样提供服务的框架,它只是一个操作hadoop的哦你根据,客户端,好比方说nvicat和mysql等数据库的关系。
(1)启动Hive:进入hive目录下 bin/hive
如果此时报错,
java.lang.RuntimeException: The root scratch dir: /tmp/hive on HDFS should be writable. Current permissions are: rwxr-xr-x
如上图所示,说明这是权限问题,会Linux都会改:bin/hdfs dfs -chmod -R 777 /tmp。
(2)查看数据库:show databases;
(3)退出Hive:exit;或者quit;
(4)显示所有表格:show tables;
(5)创建表格:create table test1(id int,name string);
(6)查看表的结构:desc test1;
和sql语句真的很像,但是在Hive中,这些语句叫做hql,简直不要太尴尬。