Hive数据仓库——环境搭建及简单使用
Hive的安装和使用一、Linux的JDK的安装 (已经安装过JDK可以跳过此步骤)二、离线安装MySQL(已经安装过MySQL可以跳过此步骤)三、搭建Hadoop框架(分布式版本)四、搭建Zookeeper集群 (可省略)五、安装Hive数据仓库
1、验证MySQL和Hadoop是否安装成功2、在MySQL中创建hive元数据库3、上传Hive的安装包和JDBC驱动包4、解压Hive的安装包并修改目录名称5、配置Hive环境变量6、进入hive-1.2.1/conf目录,复制备份文件并重命名7、配置hive的配置文件
7.1、修改hive-env.sh7.2、修改hive-site.xml7.3、拷贝mysql驱动到$HIVE_HOME/lib目录下7.4、将hive的jline-2.12.jar拷贝到hadoop对应目录下 8、启动Hive9、修改mysql元数据库hive,让其hive支持utf-8编码以支持中文 六、测试hive
1、启动hive2、在hive中创建test1数据库3、切换test1数据库4、创建students表5、创建score表6、查看students表信息7、查看score表信息8、利用可视化工具Navicat Premium 查看9、这个时候我们访问HDFS的Web UI (master:50070)10、上传数据
1、在soft目录下新建data目录用来存放数据2、安装lrzsz 方便数据直接拖放到shell中3、上传student.txt数据到hdfs4、上传score.txt数据到hdfs5、查询students表数据6、查询score表数据
Hive数据仓库——环境搭建及简单使用 Hive的安装和使用
我们Hadoop框架版本的约定
JAVA_HOME=/usr/local/soft/jdk1.8.0_171 HADOOP_HOME=/usr/local/soft/hadoop-2.7.6 HIVE_HOME=/usr/local/soft/hive-1.2.1一、Linux的JDK的安装 (已经安装过JDK可以跳过此步骤)
具体JDK安装步骤请点击下方靓仔原创博客链接:
Hadoop环境搭建之克隆前的准备及Linux的JDK的安装
具体MySQL安装步骤请点击下方靓仔原创博客链接:
大数据之在Liunx中安装MySQL
三、搭建Hadoop框架(分布式版本)
具体Hadoop安装步骤请点击下方靓仔原创博客链接:
Hadoop搭建(分布式版本)
四、搭建Zookeeper集群 (可省略)
具体Zookeeper安装步骤请点击下方靓仔原创博客链接:
Hadoop框架Zookeeper简介、搭建及简单使用
五、安装Hive数据仓库
1、验证MySQL和Hadoop是否安装成功前提是:mysql和hadoop必须已经成功启动了
可以选择将Zookeeper集群停掉不影响 zkServer.sh stop
2、在MySQL中创建hive元数据库MySQL和Hadoop能正常相应就没问题
警告!必须把编码设置为latin1编码,否则安装会造成版本上的冲突
mysql -uroot -p123456 create database hive character set "latin1"; show databases; exit
3、上传Hive的安装包和JDBC驱动包
4、解压Hive的安装包并修改目录名称
#解压Hive的安装包 tar -zxvf apache-hive-1.2.1-bin.tar.gz -C /usr/local/soft/ #切换到soft目录 cd /usr/local/soft/ #修改目录名称 mv apache-hive-1.2.1-bin/ hive-1.2.1
Hive的目录结构如下
5、配置Hive环境变量
#复制当前路径 pwd /usr/local/soft/hive-1.2.1 #在文件末尾新增 HIVE_HOME=/usr/local/soft/hive-1.2.1 $HIVE_HOME/bin: #保存退出 :wq
#刷新环境变量 source /etc/profile #输入hi按TAB键可以补出hive命令就配置成功了 [root@master hive-1.2.1]# hi history hive hive-config.sh hiveserver2
6、进入hive-1.2.1/conf目录,复制备份文件并重命名
#进入hive-1.2.1/conf目录 cd conf/ #复制备份文件并重命名 cp hive-env.sh.template hive-env.sh cp hive-default.xml.template hive-site.xml
7、配置hive的配置文件
hive的配置文件比较大,在linux中查找某项配置比较难,可以先将hive-site.xml文件复制到windows用文本编辑打开,然后ctrl+f查关键字修改,修改之后再放回到hive 的conf目录。
7.1、修改hive-env.sh#修改hive-env.sh vim hive-env.sh #再最后一行加入三行内容(大家根据自己的目录和实际情况来添加) HADOOP_HOME=/usr/local/soft/hadoop-2.7.6 JAVA_HOME=/usr/local/soft/jdk1.8.0_171 HIVE_HOME=/usr/local/soft/hive-1.2.17.2、修改hive-site.xml
通过/对要修改的地方进行查找修改
7.3、拷贝mysql驱动到$HIVE_HOME/lib目录下javax.jdo.option.ConnectionURL jdbc:mysql://master:3306/hive?useSSL=false javax.jdo.option.ConnectionDriverName com.mysql.jdbc.Driver javax.jdo.option.ConnectionUserName root javax.jdo.option.ConnectionPassword 123456 hive.querylog.location /usr/local/soft/hive-1.2.1/tmp hive.exec.local.scratchdir /usr/local/soft/hive-1.2.1/tmp hive.downloaded.resources.dir /usr/local/soft/hive-1.2.1/tmp
#切换到hive-1.2.1目录 cd /usr/local/soft/hive-1.2.1/ #拷贝mysql驱动到$HIVE_HOME/lib目录下 cp /usr/local/moudle/mysql-connector-java-5.1.49.jar ./lib/ #打开lib目录查看 cd lib/ ls7.4、将hive的jline-2.12.jar拷贝到hadoop对应目录下
#hive的 jline-2.12.jar 位置在 /usr/local/soft/hive-1.2.1/lib/jline-2.12.jar #hive的jline-2.12.jar拷贝到hadoop下 cp /usr/local/soft/hive-1.2.1/lib/jline-2.12.jar /usr/local/soft/hadoop-2.7.6/share/hadoop/yarn/lib/
8、启动Hive
#第一次启动的时候比较慢 hive #退出 exit; quit;
9、修改mysql元数据库hive,让其hive支持utf-8编码以支持中文
#登录mysq mysql -u root -p123456 #切换到hive数据库 use hive; #1、修改字段注释字符集 alter table COLUMNS_V2 modify column COMMENT varchar(256) character set utf8; #2、修改表注释字符集 alter table TABLE_PARAMS modify column PARAM_VALUE varchar(4000) character set utf8; #3、修改分区表参数,以支持分区键能够用中文表示 alter table PARTITION_PARAMS modify column PARAM_VALUE varchar(4000) character set utf8; alter table PARTITION_KEYS modify column PKEY_COMMENT varchar(4000) character set utf8; #4、修改索引注解(可选),没有建立索引执行这个命令会报错 alter table INDEX_PARAMS modify column PARAM_VALUE varchar(4000) character set utf8;
六、测试hive 1、启动hive
hive2、在hive中创建test1数据库
create database test1;3、切换test1数据库
use test1;4、创建students表
create table students(
id bigint comment '学生id',
name string comment '学生姓名',
age int comment '学生年龄',
gender string comment '学生性别',
clazz string comment '学生班级'
) comment '学生信息表'
ROW FORMAT DELIMITED FIELDS TERMINATED BY ',';
5、创建score表
create table score(
id bigint comment '学生id',
score_id bigint comment '科目id',
score int comment '学生成绩'
) comment '学生成绩表'
ROW FORMAT DELIMITED FIELDS TERMINATED BY ',';
6、查看students表信息
desc students;7、查看score表信息
desc score;
8、利用可视化工具Navicat Premium 查看
在COLUMNS_V2中可以查看到我们的表 9、这个时候我们访问HDFS的Web UI (master:50070)
这个时候只有表并没有数据
10、上传数据 1、在soft目录下新建data目录用来存放数据
#创建目录 mkdir data cd data/2、安装lrzsz 方便数据直接拖放到shell中
#安装lrzsz yum install lrzsz3、上传student.txt数据到hdfs
hdfs dfs -put students.txt /user/hive/warehouse/test1.db/students/4、上传score.txt数据到hdfs
hdfs dfs -put score.txt /user/hive/warehouse/test1.db/score5、查询students表数据
#记住用select * 查询数据的时候记得加上 limit (数据太大) select * from students limit 10;6、查询score表数据
#记住用select * 查询数据的时候记得加上 limit (数据太大) select * from score limit 10;
至此,在Hadoop上搭建Hive仓库就完成了
到底啦!关注靓仔欣赏靓仔更多的作品q(≧▽≦q)



