赞
踩
我们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
具体JDK安装步骤请点击下方靓仔原创博客链接:
Hadoop环境搭建之克隆前的准备及Linux的JDK的安装
具体MySQL安装步骤请点击下方靓仔原创博客链接:
具体Hadoop安装步骤请点击下方靓仔原创博客链接:
Hadoop搭建(分布式版本)
具体Zookeeper安装步骤请点击下方靓仔原创博客链接:
Hadoop框架Zookeeper简介、搭建及简单使用
前提是:mysql和hadoop必须已经成功启动了
可以选择将Zookeeper集群停掉不影响 zkServer.sh stop
MySQL和Hadoop能正常相应就没问题
警告!必须把编码设置为latin1编码,否则安装会造成版本上的冲突
mysql -uroot -p123456
create database hive character set "latin1";
show databases;
exit
#解压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
#复制当前路径
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
#进入hive-1.2.1/conf目录
cd conf/
#复制备份文件并重命名
cp hive-env.sh.template hive-env.sh
cp hive-default.xml.template hive-site.xml
hive的配置文件比较大,在linux中查找某项配置比较难,可以先将hive-site.xml文件复制到windows用文本编辑打开,然后ctrl+f查关键字修改,修改之后再放回到hive 的conf目录。
#修改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.1
通过/对要修改的地方进行查找修改
<property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://master:3306/hive?useSSL=false</value> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>root</value> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>123456</value> </property> <property> <name>hive.querylog.location</name> <value>/usr/local/soft/hive-1.2.1/tmp</value> </property> <property> <name>hive.exec.local.scratchdir</name> <value>/usr/local/soft/hive-1.2.1/tmp</value> </property> <property> <name>hive.downloaded.resources.dir</name> <value>/usr/local/soft/hive-1.2.1/tmp</value> </property>
#切换到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/
ls
#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/
#第一次启动的时候比较慢
hive
#退出
exit;
quit;
#登录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
create database test1;
use test1;
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 ',';
create table score(
id bigint comment '学生id',
score_id bigint comment '科目id',
score int comment '学生成绩'
) comment '学生成绩表'
ROW FORMAT DELIMITED FIELDS TERMINATED BY ',';
desc students;
desc score;
这个时候只有表并没有数据
#创建目录
mkdir data
cd data/
#安装lrzsz
yum install lrzsz
hdfs dfs -put students.txt /user/hive/warehouse/test1.db/students/
hdfs dfs -put score.txt /user/hive/warehouse/test1.db/score
#记住用select * 查询数据的时候记得加上 limit (数据太大)
select * from students limit 10;
#记住用select * 查询数据的时候记得加上 limit (数据太大)
select * from score limit 10;
至此,在Hadoop上搭建Hive仓库就完成了
到底啦!关注靓仔欣赏靓仔更多的作品q(≧▽≦q)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。