大数据三大组件 (Hadoop, Hive, Spark) 之 Spark Local 模式安装配置

发布时间:2026/10/10 20:57:07

大数据三大组件 (Hadoop, Hive, Spark) 之 Spark Local 模式安装配置 前言本文是大数据三大组件安装系列的第三篇最终篇将介绍如何在已搭建好 Hadoop Hive 的基础上安装Spark 2.4.0并与 Hive 数仓集成。安装完成后可以通过 Spark SQL 直接查询 Hive 中的数据并支持通过 JDBC 远程连接。本系列所需安装包百度网盘下载提取码me15前置条件请确保已完成 Hadoop 伪分布式 和 Hive 远程模式 的安装。⚠️关于 Spark 版本本次使用的 Spark 是经过编译的版本已内置 Hive 支持可以直接操作 Hive 数仓。官方默认下载的 Spark 可能不包含 Hive 依赖需要自行编译或下载对应版本。环境与版本信息组件版本说明Spark2.4.0含 Hive 支持本次安装Hadoop3.1.3已安装第一篇Hive3.1.2已安装第二篇JDK1.8已安装第一篇一、验证 Spark 是否支持 Hive在安装之前先确认你使用的 Spark 版本是否已内置 Hive 支持。进入spark-shell命令窗口执行以下导入语句import org.apache.spark.sql.hive.HiveContext如果出现错误如下图说明当前 Spark 版本未编译 Hive 支持需要更换为包含 Hive 的编译版本如果导入成功如下图说明可以正常使用二、安装 Spark2.1 解压并配置目录将 Spark 安装包解压到/usr/local目录并重命名、设置权限# 进入下载目录 cd /home/hadoop/下载/ # 解压到 /usr/local需要输入当前用户的登录密码 sudo tar -zxf ~/下载/spark-2.1.0-bin-h27hive.tgz -C /usr/local # 重命名为 sparkwithhive cd /usr/local sudo mv ./spark-2.1.0-bin-h27hive ./sparkwithhive # 修改目录权限 sudo chown -R hadoop:hadoop ./sparkwithhive2.2 配置 spark-env.sh从模板文件创建配置文件并编辑cd /usr/local/sparkwithhive/ cp ./conf/spark-env.sh.template ./conf/spark-env.sh vim ./conf/spark-env.sh在文件中添加 JDK 和 Hadoop 的路径配置根据你的实际安装路径调整export JAVA_HOME/usr/lib/jvm/jdk1.8.0_162 export HADOOP_HOME/usr/local/hadoop export HADOOP_CONF_DIR/usr/local/hadoop/etc/hadoop2.3 验证 Spark 安装运行 Spark 内置的 Pi 计算示例验证安装是否成功cd /usr/local/sparkwithhive bin/run-example SparkPi 21 | grep Pi is如果输出类似Pi is roughly 3.14...的结果说明 Spark 安装成功三、Spark 与 Hive 集成验证进入spark-shell测试是否能正确访问 Hive 中的数据库cd /usr/local/sparkwithhive bin/spark-shell在 Spark Shell 中执行spark.sql(show databases).show()如果能正确列出 Hive 中的数据库说明 Spark 与 Hive 集成成功四、配置 Spark SQL 远程连接如果希望通过 JDBC 客户端如 DataGrip、DBeaver、Navicat 等远程连接 Spark SQL需要启动 Spark Thrift Server。4.1 启动服务需要按照以下顺序依次启动# 第一步启动 Hadoop HDFS cd /usr/local/hadoop ./sbin/start-dfs.sh # 第二步启动 Hive Metastore 服务 hive --service metastore # 第三步启动 Spark Thrift Server替代 HiveServer2 cd /usr/local/sparkwithhive sbin/start-thriftserver.sh4.2 验证端口确认 Thrift Server 已在 10000 端口监听netstat -ntulp | grep 100004.3 Beeline 测试连接使用 Spark 自带的 Beeline 客户端测试连接用户名和密码可留空直接回车cd /usr/local/sparkwithhive/bin ./beeline !connect jdbc:hive2://localhost:100004.4 配置 Hive 允许 Spark Thrift Server 连接如果遇到连接权限问题需要在 Hadoop 的core-site.xml中添加代理用户配置然后重启 Hadoop 服务4.5 使用 JDBC 工具连接在 DataGrip 等工具中创建 Hive 类型的数据源连接信息如下配置项值JDBC URLjdbc:hive2://localhost:10000用户名留空或填写系统用户名密码留空驱动Hive JDBC Driver总结至此大数据三大组件 (Hadoop, Hive, Spark) 之 Spark Local 模式配置安装全部完成整个系列的核心要点回顾篇目组件核心内容链接第一篇Hadoop 3.1.3JDK 安装、HDFS 伪分布式配置查看第二篇Hive 3.1.2MySQL 元数据库、HiveServer2 远程连接查看第三篇Spark 2.4.0Spark 与 Hive 集成、Thrift Server 远程连接本文提示如果希望让他人通过外网访问你搭建的大数据平台可以通过内网穿透将相关端口如 9870、10000 等映射出去具体方法可参考 利用阿里云搭建内网穿透服务。如果在搭建过程中遇到任何问题欢迎在评论区留言交流
延伸阅读

更多相关文章

2026/10/10 20:56:18

python --PDF转Word

在当今信息时代,PDF和Word文档是工作中常用的文档格式。转换PDF为Word可以帮助我们更灵活地编辑和分享文档内容。在本文中,我们将探讨使用Python实现将PDF文件转换为Word文档的四种方法,介绍每种方法的代码示例、易错点以及解决方法,旨在帮助读者顺利完成这一转换任务。 1…

2026/10/10 20:55:49

给AI对话助手外挂长期记忆:claude-mem架构与实战

claude-mem 这名字起得相当直白——mem 就是 memory,把这个小工具和主流通用对话助手(下文就统一叫“模型助手”吧)放在一起,它的定位立刻清晰:给没有长期记忆的对话系统补上一块“外挂记忆”。我自己长期重度使用这类…

2026/10/10 20:55:49

微信点餐小程序毕设:SSM+MySQL全栈实战指南

简介:这是一套面向计算机专业本科生的微信点餐小程序毕业设计全栈开发资源,适用于课程设计、毕设选题与Java小程序技术栈综合实践。项目采用微信小程序前端(WXML/WXSS/JS) SSM(SpringSpringMVCMyBatis)后端…

2026/10/10 20:55:49

AnyPS5技术解析:PS5硬件约束下的跨运行时抽象实践

项目标题:“AnyPS5”这个名称本身带有强烈的指向性与模糊性并存的特征——它既像一个技术代号,又像一句口号;既暗示兼容性、泛用性(“Any”),又锚定在特定硬件生态(“PS5”)。但必须…

2026/10/10 20:55:49

Java Web动漫之家系统实战:从设计到部署避坑指南

简介:Java动漫之家系统设计与实现是一套面向动漫爱好者在线互动平台的完整开发设计方案,适用于JavaWeb课程设计、毕业设计或快速搭建动漫资源社区的项目预研。该方案以SSM框架为核心,结合MySQL数据存储与HTML5前端交互,从系统背景…

2026/10/10 20:55:49

AnyPS5:面向PS5的跨平台图形行为建模与性能标定框架

项目标题:“AnyPS5”这个名称一出现,我就下意识多看了两眼——不是因为它带了“PS5”,而是因为前缀“Any”太有味道了。它不像“FakePS5”“PS5Emu”那种直白的试探性命名,也不像“PS5Lite”“PS5Go”这种厂商式缩略,而…

2026/10/10 20:50:49

人工合规审查有盲区,智能合规如何补足文件风险识别短板

合同、规章制度、对外函件、合作协议企业日常经营中,海量文本文件里潜藏着大量合规风险。传统人工文件合规审查存在天然短板:依赖个人经验、受精力限制、批量文件极易漏审。许多隐性合规漏洞藏在细碎条款之中,人工难以全覆盖排查。一旦文件落…

2026/10/10 7:31:36

Jev+Agent接管浏览器:browser-use实战与jev-ultrafast性能优化

1. 从“Jev”说起:为什么我要把Agent接进浏览器“Jev”这个词最近在圈子里出现的频率越来越高,很多人第一次听到会以为是某个新模型的名字,其实它更像是一种思路——把Jev模型的能力当作底座,通过Agent的方式去接管浏览器&#xf…

2026/10/9 20:15:56

多智能体集群实战:DeepAgents编排、MCP与A2A协议及Skills体系

1. 从"单兵作战"到"集群协同":多智能体编排到底在解决什么问题如果你最近在折腾 Agent 相关的东西,大概率会有一种感觉:单个 Agent 能做的事情,其实很快就摸到天花板了。你给它一个提示词,挂几个工…

2026/10/8 6:05:44

无源低通滤波器设计实战:从RC到LC,手把手教你避开那些坑

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 0:04:53

从逻辑门到计算机:数字电路核心原理与全加器搭建实战

如果你拆过一台旧电脑的主板,盯着那些黑乎乎的小芯片看上一会儿,可能会冒出同一个疑问:这堆引脚密集的元件,到底是怎么“变”出那么复杂的应用的?答案并不在某个神秘的部件里,而是在所有芯片内部都在反复使…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑