Hadoop生态圈框架部署 伪集群版(七)- Hive部署

文章目录

  • 前言
  • 一、Hive部署(手动部署)
    • 1. 下载Hive
    • 2. 解压Hive安装包
      • 2.1 解压
      • 2.2 重命名
      • 2.3 解决冲突
        • 2.3.1 解决guava冲突
        • 2.3.2 解决SLF4J冲突
    • 3. 配置Hive
      • 3.1 配置Hive环境变量
      • 3.2 修改 hive-site.xml 配置文件
      • 3.3 配置MySQL驱动包
    • 4. 初始化MySQL上的存储hive元数据的数据库
    • 5. 进入Hive客户端
    • 6. 设置远程连接
      • 6.1 启动MetaStore服务
      • 6.2 启动HiveServer2服务
      • 6.3 进入Hive客户端
  • 注意


前言

随着大数据技术的不断发展,数据处理和分析的需求日益增长。Apache Hive作为基于Hadoop的一个数据仓库工具,能够极大地简化对大规模数据集的查询和管理过程。它允许用户使用类似于SQL的HiveQL语言查询数据,这使得那些熟悉关系型数据库管理系统(RDBMS)的开发者可以轻松地转移到大数据平台上来。

本指南旨在为想要在Linux环境中手动部署和配置Apache Hive 3.1.3的读者提供一个详尽的操作步骤集合。我们将从下载安装包开始,一直到成功启动Hive服务,并确保其能够稳定运行。


一、Hive部署(手动部署)

1. 下载Hive

执行如下命令下载hive的安装包apache-hive-3.1.3-bin.tar.gz到/export/software目录。

wget https://repo.huaweicloud.com/apache/hive/hive-3.1.3/apache-hive-3.1.3-bin.tar.gz -P /export/software

在这里插入图片描述

也可以点击此连接下载到windows,再上传到Linux的/export/software目录。

2. 解压Hive安装包

2.1 解压

将Hive安装包通过解压方式安装至/export/servers目录。

tar -zxvf /export/software/apache-hive-3.1.3-bin.tar.gz -C /export/servers/

解压完成如下图所示。

在这里插入图片描述

2.2 重命名

执行如下命令将apache-hive-3.1.3-bin重命名为hive-3.1.3。

mv /export/servers/apache-hive-3.1.3-bin /export/servers/hive-3.1.3

在这里插入图片描述

2.3 解决冲突

2.3.1 解决guava冲突

如下图所示,hadoop中的guava与hive中的guava版本不一致,会产生冲突,需要把hive的guava更换为hadoop的guava高版本。

rm -f /export/servers/hive-3.1.3/lib/guava-19.0.jar
cp /export/servers/hadoop-3.3.0/share/hadoop/common/lib/guava-27.0-jre.jar /export/servers/hive-3.1.3/lib

在这里插入图片描述

2.3.2 解决SLF4J冲突

执行如下命令解决slf4j冲突问题。

rm -f /export/servers/hive-3.1.3/lib/log4j-slf4j-impl-2.17.1.jar

在这里插入图片描述

3. 配置Hive

3.1 配置Hive环境变量

执行如下命令设置Hive环境变量,加载系统环境变量配置文件,并查看环境变量是否配置成功。

echo >> /etc/profile
echo 'export HIVE_HOME=/export/servers/hive-3.1.3' >> /etc/profile
echo 'export PATH=$PATH:$HIVE_HOME/bin' >> /etc/profile
source /etc/profile
echo $HIVE_HOME

在这里插入图片描述

3.2 修改 hive-site.xml 配置文件

使用cat命令把配置内容重定向并写入到 /export/servers/hive-3.1.3/conf/hive-site.xml 文件。

cat >/export/servers/hive-3.1.3/conf/hive-site.xml <<EOF
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration><!-- 配置JDO(Java Data Objects)选项,指定Hive元数据存储的数据库连接URL。这里使用的是MySQL数据库,并且如果数据库不存在则自动创建。 --><property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://hadoop:3306/hive?createDatabaseIfNotExist=true</value></property><!-- 指定用于连接数据库的JDBC驱动类名 --><property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.cj.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><!-- 指定Hive元数据仓库在HDFS上目录的位置 --><property><name>hive.metastore.warehouse.dir</name><value>/user/hive/warehouse</value></property>
</configuration>
EOF

在这里插入图片描述

3.3 配置MySQL驱动包

执行如下命令下载MySQL驱动包到/export/servers/hive-3.1.3/lib目录下。

wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.30/mysql-connector-java-8.0.30.jar -P /export/servers/hive-3.1.3/lib/

在这里插入图片描述

4. 初始化MySQL上的存储hive元数据的数据库

执行如下命令初始化MySQL上的存储hive元数据的数据库。

schematool -initSchema -dbType mysql

在这里插入图片描述

初始化完成如下图所示。

在这里插入图片描述

5. 进入Hive客户端

在访问Hive客户端之前,由于Hive完全依赖于Hadoop集群,因此需要先启动Hadoop集群。

start-all.sh

在这里插入图片描述

执行如下命令在本地进入Hive客户端。

hive

在这里插入图片描述
在这里插入图片描述

退出Hive客户端。可以使用exit;命令或者按快捷键Ctrl+c退出。

exit;

在这里插入图片描述

6. 设置远程连接

6.1 启动MetaStore服务

执行如下命令后台启动MetaStore服务,并指定日志输出位置。

mkdir -p /export/servers/hive-3.1.3/logs
nohup hive --service metastore > /export/servers/hive-3.1.3/logs/metastore.log 2>&1 &

6.2 启动HiveServer2服务

执行如下命令后台启动HiveServer2服务,并指定日志输出位置。

nohup hive --service hiveserver2 > /export/servers/hive-3.1.3/logs/hiveserver2.log 2>&1 &

在这里插入图片描述

可以使用如下命令查看启动后的MetaStore服务进程和HiveServer2服务进程,此时如果要停止对应服务,可以使用kill命令杀死对应进程。

ps -ef | grep hive

在这里插入图片描述

6.3 进入Hive客户端

执行如下命令远程进入Hive客户端。

beeline -u jdbc:hive2://hadoop:10000 -n root
  • 参数 -u:指定HiveServer2服务的JDBC URL。

    • jdbc:hive2://hadoop3:10000 中:
      • hadoop3 是运行HiveServer2服务的服务器主机名。
      • 10000 是HiveServer2服务默认使用的端口号。
  • 参数 -n:指定连接HiveServer2服务时使用的用户名。

    • root 是用户名,该用户必须具有操作HDFS的适当权限。

在这里插入图片描述

如果要退出hive客户端,可以使用按快捷键Ctrl+c退出客户端。


注意

每当系统重启后,为了确保Hive能够正常工作,首先需要执行如下命令启动Hadoop伪集群。

start-all.sh

如果还需要支持远程连接功能,则必须执行如下命令启动Hive的MetaStore服务和HiveServer2服务。

mkdir -p /export/servers/hive-3.1.3/logs
nohup hive --service metastore > /export/servers/hive-3.1.3/logs/metastore.log 2>&1 &
nohup hive --service hiveserver2 > /export/servers/hive-3.1.3/logs/hiveserver2.log 2>&1 &

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/486080.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Hadoop生态圈框架部署 伪集群版(五)- HBase伪分布式部署

文章目录 前言一、Hbase伪分布式部署&#xff08;手动部署&#xff09;1. 下载Hbase2. 上传安装包3. 解压HBase安装包4. 配置HBase配置文件4.1 修改hbase-env.sh配置文件4.2 修改hbase-site.xml配置文件4.3 修改regionservers配置文件4.4 删除hbase中slf4j-reload4j-1.7.33.jar…

家政项目小程序+ssm

摘要 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了微信小程序家政项目小程序的开发全过程。通过分析微信小程序家政项目小程序管理的不足&#xff0c;创建了一个计算机管理微信小程序家政项目小程序的方案。文章…

qt QNetworkAccessManager详解

1、概述 QNetworkAccessManager是QtNetwork模块中的一个核心类&#xff0c;它允许应用程序发送网络请求并接收响应。该类是网络通信的基石&#xff0c;提供了一种方便的方式来处理常见的网络协议&#xff0c;如HTTP、HTTPS等。QNetworkAccessManager对象持有其发送的请求的通用…

五、docker的网络模式

五、docker的网络模式 5.1 Docker的四种网络模式 当你安装docker时&#xff0c;它会自动创建三个网络&#xff0c;可使用如下命令查看&#xff1a; [rootlocalhost ~]# docker network ls NETWORK ID NAME DRIVER SCOPE 7390284b02d6 bridge bridge lo…

T113-S3 Tina 串口切换

前面介绍了如何在 Tina 中添加新的板子及切换存储类型&#xff0c;本节介绍如何修改板子串口配置。 1、修改调试串口 Tina 调试串口 配置在 device/config/chips/t113/configs/evbemmc/sys_config.fex 文件中&#xff0c;可以修改 uart_para 变量来指定调试串口。 ;--------…

【计算机网络】 —— 数据链路层(壹)

文章目录 前言 一、概述 1. 基本概念 2. 数据链路层的三个主要问题 二、封装成帧 1. 概念 2. 帧头、帧尾的作用 3. 透明传输 4. 提高效率 三、差错检测 1. 概念 2. 奇偶校验 3. 循环冗余校验CRC 1. 步骤 2. 生成多项式 3. 例题 4. 总结 四、可靠传输 1. 基本…

M005 PHP+MYSQL+web编程课程网站的设计与实现 源码 配置 文档

web编程课程网站 1.摘要2.开发目的和意义3.系统功能设计4.系统界面截图5.源码获取 1.摘要 随着互联网的飞速发展&#xff0c;各行各业的信息化进程逐步加快。商业信息化、政务信息化、教育信息、服务信息化等等已遍布全国各地。信息化的服务平台能更加高效的为用户提供各种服务…

深入理解 PyTorch 自动微分机制与自定义 torch.autograd.Function

文章目录 前言一、pytorch使用现有的自动微分机制二、torch.autograd.Function中的ctx解读1、forward 方法中的 ctx2、backward 方法中的 ctx3、小结 三、pytorch自定义自动微分函数&#xff08;torch.autograd.Function&#xff09;1、torch.autograd.Function计算前向与后向传…

python怎么打印心形

首先按WinR调出运行界面&#xff0c;输入cmd打开命令行。 接着输入python命令进入python环境。 然后复制下面的代码进行粘贴&#xff1a; print(\n.join([.join([(baidu[(x-y) % len(baidu)] if ((x*0.05)**2(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3 < 0else ) for x in r…

LabVIEW-简单串口助手

LabVIEW-简单串口助手 串口函数VISA配置串口VISA写入函数VISA读取函数VISA资源名称按名称解除捆绑 函数存放位置思维导图主体界面为以下 串口函数 VISA配置串口 VISA写入函数 VISA读取函数 VISA资源名称 按名称解除捆绑 函数存放位置 思维导图 主体界面为以下 从创建好的“枚举…

使用数据层进行数据生命周期管理

作者&#xff1a;来自 Elastic Stef Nestor Elasticsearch 7.10 使配置数据生命周期变得不再那么复杂。在这篇博文中&#xff0c;我将介绍一些变化、如何使用它们以及一些最佳实践。 数据生命周期可以包含很多阶段&#xff0c;因此我们将涉及&#xff1a; 将集群划分为层&…

IPv4路由典型配置-BGP

一、组网说明 三台设备运行BGP协议&#xff0c;SW 1属于AS 100&#xff0c;SW 2和SW 3属于AS 200。配置BGP协议&#xff0c;以保证三台设备之间可以互通。 二、组网图 三、配置步骤 SW 1的配置 #BGP部分 switch(config)#router bgp 100switch(config-router-bgp)#bgp …

【优选算法篇】:滑动窗口算法--开启高效解题的“窗口”,透过例题看奥秘

✨感谢您阅读本篇文章&#xff0c;文章内容是个人学习笔记的整理&#xff0c;如果哪里有误的话还请您指正噢✨ ✨ 个人主页&#xff1a;余辉zmh–CSDN博客 ✨ 文章所属专栏&#xff1a;c篇–CSDN博客 文章目录 一.滑动窗口算法二.例题1.长度最小的子数组2.无重复字符的最长字串…

什么是甘特图?使用甘特图制定项目计划表的步骤

在项目管理中&#xff0c;项目计划是项目的核心要素&#xff0c;它详细记录了项目任务详情、责任人、时间规划以及所需资源。 这份计划不仅为项目推进提供指引&#xff0c;更是控制范围蔓延、争取更多支持的有力工具。 在项目管理中&#xff0c;项目计划是项目的核心要素&…

keil报错---connection refused due to device mismatch

解决办法如下&#xff1a; 记得改成1 把Enable取消

Mybaits的优点缺点?

大家好&#xff0c;我是锋哥。今天分享关于【Mybaits的优点&缺点?】面试题。希望对大家有帮助&#xff1b; Mybaits的优点&缺点? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 MyBatis 是一个优秀的持久层框架&#xff0c;通常用于 Java 应用程序中&…

后端-pageHelp分页查询

在pom.xml文件中先导入分页的坐标 PageResult里面有两个后端返回给前端的参数&#xff0c;我们最后把PageResult再封装到Result中&#xff0c; PageResult和Result都是工具类 EmployeeDTO中是前端页面中的模糊查询字段和分页的两个值 注意&#xff01; 括号中的参数Employee…

基于FPGA的智能电子密码指纹锁(开源全免)

基于FPGA的智能电子密码指纹锁 一、功能描述硬件资源需求 二、整体框架知识准备AS608指纹模块4*4数字键盘模块 三、Verilog代码实现以及仿真验证1.AS608_data模块2.check_hand模块3.four_four_key模块4.check_mima模块5.change_mima模块6.seg_ctrl模块7.uart_top模块8.key_debo…

静坐修心.

文章目录 打坐的历史文化渊源东方的起源与传承西方的接受与演变现代生活中的打坐 盘腿坐对身体的影响促进脊椎健康改善呼吸系统功能增强消化系统机能改善血液循环调节神经系统错误姿势及其他潜在危害 盘腿坐对心理的作用促进内心平静与放松提升自我觉察与内在探索培养专注力与精…

后端-编辑按钮的实现

编辑一共要实现两步&#xff1a; 1.点击编辑蹦出来一个弹窗&#xff0c;此时需要回显&#xff0c;根据id查出来这条数据 2.修改某些值之后点击保存的时候调用修改的接口 根据id查询的时候正常操作 修改值的时候要注意一些问题 mapper层的Employee和impl层的接收实体不一样