基于Hadoop平台的电信客服数据的处理与分析③项目开发:搭建基于Hadoop的全分布式集群---任务10:Hive安装部署

任务描述

任务内容为安装并配置在Hadoop集群中使用Hive。

任务指导

Hive是一个基于Hadoop的数据仓库框架,在实际使用时需要将元数据存储在数据库中

具体安装步骤如下:

  1. 安装MySQL数据库(已安装)

  2. 解压缩Hive的压缩包

  3. 配置Hive的环境变量

  4. 拷贝MySQL的驱动包到Hive的lib目录下

  5. 修改Hive的配置文件,Hive的配置文件存放在Hive安装目录下的conf中

  6. 初始化Hive的元数据

  7. Hive只需要安装在需要执行Hive操作的节点上(master1)。

任务实现

1. 安装MySQL数据库

已在master1安装可以直接使用

用户名:root

密码:Qst@123456

2. 安装Hive。在master1服务器解压并配置。

下载"apache-hive-2.3.4-bin.tar.gz",已经放到/opt/software目录下;

输入【cd /opt/software】命令转到/opt/software目录下;

输入【tar -xzvf apache-hive-2.3.4-bin.tar.gz -C /opt/app/】命令解压。

3. 配置Hive环境变量,修改系统配置文件/etc/profile。

输入【vi /etc/profile】命令,编辑/etc/profile文件。

/etc/profile文件修改为如下内容:

复制代码
export HIVE_HOME=/opt/app/apache-hive-2.3.4-bin
export PATH=$PATH:$HIVE_HOME/bin

刷新环境变量让配置生效

复制代码
[root@master1 ~]# source /etc/profile

4. 将MySQL驱动包导入Hive的lib目录中

将/opt/software目录中的MySQL驱动包拷贝到$HIVE_HOME/lib目录中中

复制代码
[root@master1 ~]# cp /opt/software/mysql-connector-java-5.1.47-bin.jar $HIVE_HOME/lib

5. 配置hive-site.xml文件

进入Hive配置目录【$HIVE/conf】编辑【hive-site.xml】文件

复制代码
[root@master1 ~]# cd $HIVE_HOME/conf
[root@master1 conf]# vim hive-site.xml

hive-site.xml文件配置内容如下:

复制代码
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration> 
<property> 
<name>javax.jdo.option.ConnectionURL</name>  
<value>jdbc:mysql://master1:3306/hive?createDatabaseIfNotExist=true&amp;useUnicode=true&amp;characterEncoding=UTF-8&amp;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>Qst@123456</value> 
</property>  
<property> 
<name>datanucleus.readOnlyDatastore</name>  
<value>false</value> 
</property>  
<property> 
<name>datanucleus.fixedDatastore</name>  
<value>false</value> 
</property>  
<property> 
<name>datanucleus.autoCreateSchema</name>  
<value>true</value> 
</property>  
<property> 
<name>datanucleus.schema.autoCreateAll</name>  
<value>true</value> 
</property>  
<property> 
<name>datanucleus.autoCreateTables</name>  
<value>true</value> 
</property>  
<property> 
<name>datanucleus.autoCreateColumns</name>  
<value>true</value> 
</property>  
<property> 
<name>hive.metastore.local</name>  
<value>true</value> 
</property> 
</configuration>

配置hive-env.sh文件,通过hive-env.sh.template模版文件创建hive-env.sh文件并进行配置

复制代码
[root@master1 conf]# cp hive-env.sh.template hive-env.sh
[root@master1 conf]# vi hive-env.sh

在文件末尾添加如下配置

复制代码
HADOOP_HOME=/opt/app/hadoop-2.10.1
export HIVE_CONF_DIR=/opt/app/apache-hive-2.3.4-bin/conf
export HIVE_AUX_JARS_PATH=/opt/app/apache-hive-2.3.4-bin/conf/lib

6. 初始化Hive的元数据

执行如下命令初始化Hive的元数据,初始化前应确保MySQL数据已经启动,MySQL的启动命令【systemctl start mysqld.service】

复制代码
[root@master1 ~]# schematool -dbType mysql -initSchema

7. 进入Hive命令行

复制代码
[root@master1 ~]# hive
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/opt/app/apache-hive-2.3.4-bin/lib/log4j-slf4j-impl-2.6.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/opt/app/hadoop-2.8.5/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]

Logging initialized using configuration in jar:file:/opt/app/apache-hive-2.3.4-bin/lib/hive-common-2.3.4.jar!/hive-log4j2.properties Async: true
Hive-on-MR is deprecated in Hive 2 and may not be available in the future versions. Consider using a different execution engine (i.e. spark, tez) or using Hive 1.X releases.
hive> 
相关推荐
Georgeviewer9 小时前
商业落地评测|实体门店GEO优化性价比与服务体系深度复盘
大数据·人工智能
腻害兔11 小时前
【若依项目-产品经理视角】深度拆解 RuoYi-Vue-Pro 商城模块:从商品管理到交易引擎,50 张表撑起一整套电商系统
java·大数据·vue.js·产品经理·ai编程
GIR12311 小时前
官方出品 | 多通道土壤呼吸测量系统市场现状与十五五规划深度报告:行业分析+趋势预测全收录
大数据·人工智能·机器学习
南讯股份Nascent13 小时前
洽洽全域会员项目启动会圆满召开
大数据·人工智能
大郭鹏宇13 小时前
基于 LangGraph 构建智能分诊系统(一):项目概述与环境搭建
大数据·人工智能·microsoft·langchain
Database_Cool_14 小时前
单机 MySQL 迁移到分布式数据库方便吗?阿里云 PolarDB-X 100% MySQL 协议兼容零改造平滑迁移
数据库·分布式·mysql
天天爱吃肉821816 小时前
【电源拆解:跟着问答逐一认识开关适配器PCB元器件】
大数据·人工智能·python·功能测试·嵌入式硬件·汽车
Elastic 中国社区官方博客17 小时前
将你的 Grafana Kubernetes 仪表板迁移到 Elastic Observability:相同的 PromQL,30 倍更快的查询
大数据·人工智能·elasticsearch·搜索引擎·容器·kubernetes·grafana
abcy07121317 小时前
storm核心实时机制
大数据·storm
灵机一物17 小时前
合伙制律所分红和提成律师个税怎么合规优化?
大数据·人工智能