首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >大数据Spark(五十六):Spark生态模块与运行模式

大数据Spark(五十六):Spark生态模块与运行模式

作者头像
Lansonli
发布于 2025-05-24 01:55:47
发布于 2025-05-24 01:55:47
21700
代码可运行
举报
文章被收录于专栏:Lansonli技术博客Lansonli技术博客
运行总次数:0
代码可运行

Spark生态模块与运行模式

一、Spark生态模块

Spark 生态模块包括:SparkCore、SparkSQL、SparkStreaming、StructuredStreaming、MLlib 和 GraphX。与 Hadoop 相关的整个技术生态如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
  +-------------------+     +-------------------+
  |   Spark 应用层    |     |   Hadoop 应用层   |
  +-------------------+     +-------------------+
  | Spark SQL         | <-->| Hive             |  (兼容 HiveQL, 元数据共享)
  | StructuredStreaming| <->| Kafka/Flume      |  (流数据源集成)
  | MLlib             | <-->| HDFS/HBase       |  (读取训练数据/存储模型)
  | GraphX            | <-->| HDFS             |  (图数据存储)
  +-------------------+     +-------------------+
           ↓                           ↓
  +---------------------------------------------------+
  |            Spark 计算引擎层 (Spark Core)          |
  |  (替代 MapReduce,运行于 YARN/Mesos/K8s 资源层)    |
  +---------------------------------------------------+
           ↓                           ↓
  +-------------------+     +-----------------------+
  | Hadoop 资源管理层  |     | Hadoop 分布式存储层    |
  | YARN              |     | HDFS                  |
  | (资源调度与分配)    |     | (数据持久化存储)        |
  +-------------------+     +-----------------------+
           ↓                           ↓
  +---------------------------------------------------+
  |           底层基础设施(物理/虚拟化集群)           |
  +---------------------------------------------------+

下面分别介绍Spark各个模块功能。

  • SparkCore

Spark Core 是 Spark 的核心模块,提供了基本的功能和 API,包括任务调度、内存管理、故障恢复等,它实现了弹性分布式数据集(RDD)的概念,支持对分布式数据集的并行操作,Spark其他模块都是基于 Spark Core 构建。

  • SparkSQL

Spark SQL 模块用于处理结构化数据,支持使用标准SQL 进行数据分析、查询,SparkSQL中还提供了 DataFrame 和 Dataset API,方便开发者以声明式方式操作数据。此外,Spark SQL 还支持与 Hive 的集成,可以直接查询 Hive 仓库中的数据。

  • SparkSteaming

SparkStreaming 是基于 SparkCore 模块实现的,用于实时处理流数据的模块。它将实时数据流分成小批次,然后通过类似于 Spark Core 的 API 进行准实时数据处理。

  • StructuredStreaming

StructuredStreaming 是基于 SparkSQL 模块构建的可扩展且容错的流处理模块。它提供了一种统一的编程模型,使开发者能够以 SQL 方式编写流式计算操作,可以轻松地对流数据进行转换、聚合和分析。

  • MLlib

MLlib 模块是 Spark 的机器学习库,提供了常用的机器学习算法和工具,如分类、回归、聚类、协同过滤等。它利用 Spark 的分布式计算能力,能够处理大规模数据集上的机器学习任务。

  • GraphX

GraphX 模块用于图计算,提供了用于表示图和执行图操作的 API。它支持常见的图算法,如 PageRank、连接组件等,方便开发者进行复杂的图数据分析。

二、Spark运行模式

Apache Spark 提供了多种运行模式,以适应不同的开发、测试和生产环境需求。这些模式包含Local Mode、Standalone Mode、Spark On Yarn、Spark On Mesos、Spark On K8s,下面分别介绍。

  • 本地模式(Local Mode)

在本地模式下,Spark 应用程序在单台机器上运行,利用多线程模拟分布式计算。此模式适用于开发和测试阶段,方便调试和验证应用程序逻辑。可以通过指定线程数来控制并行度,例如:local[4] 表示使用 4 个线程。

  • 独立模式(Standalone Mode)

Standalone 模式是 Spark 自带的资源调度系统,无需依赖外部集群管理器。在此模式下,集群由一个主节点(Master)和多个工作节点(Worker)组成。应用程序提交到主节点后,主节点负责将任务分配给各个工作节点执行。此模式适用于中小型集群,配置和管理相对简单。

  • YARN 模式(Spark on YARN)

在 YARN 模式下,Spark 运行在 Hadoop 的 YARN(Yet Another Resource Negotiator)集群管理器上。YARN 提供资源管理和作业调度功能,使 Spark 能够与其他大数据应用程序共享集群资源。此模式适用于已经部署了 Hadoop 集群的环境,便于资源的统一管理。

  • Mesos 模式(Spark on Mesos)

Mesos 是一个分布式系统内核,可用于管理集群资源。在 Mesos 模式下,Spark 可以与其他框架(如 Apache Hadoop、Apache Storm)共享集群资源,实现资源的高效利用。此模式在国外使用居多。

  • Kubernetes 模式(Spark on Kubernetes)

Kubernetes 是一个开源的容器编排平台。在 Kubernetes 模式下,Spark 应用程序以容器的形式运行,Kubernetes 负责容器的调度和管理。此模式适用于已经采用容器化技术的环境,提供了更好的弹性和可移植性。

在实际Spark开发中,Spark运行模式使用最多的是基于Yarn。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-05-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
星云棋布,步步为“赢”,IDC的“合纵连横”
近日,IDC在北京举办了主题为“星云棋布,步步为‘赢’”的2023 IDC中国生态峰会。400多家行业内企业领袖共聚一堂,从多重维度分析了AI技术应用的发展,以及AI对整体IT生态所产生的影响,并围绕技术驱动终端行业新一轮发展、产品融合下的业务赋能与用户体验、场景进阶影响的消费市场变革等一系列话题展开交流分享。
数据猿
2023/11/29
1720
星云棋布,步步为“赢”,IDC的“合纵连横”
TAPD 思享汇 | 泛娱企业如何“数字化突围”,实现可持续发展?
随着数字化转型在各行业的广泛应用,越来越多的企业开始寻找新的增长点。对于数字原生企业而言,加速数字化转型是由“数字化”迈向“数智化”,增收减支,构建核心竞争优势,实现可持续发展的必然过程。敏捷协作工具凭借其先天优势,帮助企业快速适应市场变化和需求,集中内外部资源,不断迭代优化,成为了数字企业提质增效的利器。
TAPD敏捷研发
2023/09/07
1720
TAPD 思享汇 | 泛娱企业如何“数字化突围”,实现可持续发展?
TAPD思享汇 | 从“混乱”到“有序”:虎牙项目管理实践分享
迄今为止,游戏直播行业发展历程已有十年之整。2013年,随着电竞游戏的发展催生了游戏直播,这当中首屈一指的就是虎牙直播。
TAPD敏捷研发
2023/10/27
2750
TAPD思享汇 | 从“混乱”到“有序”:虎牙项目管理实践分享
揭秘 | 腾讯智慧出行的持续交付三级跳
随着汽车产业的飞速变革,行业生态也日益向云端延伸。成立至今,腾讯智慧出行车联网已与超过35家主流车企达成合作,落地车型多达150余款,累计搭载车辆超过700万台,从0到1搭建出一套高品质规范化的交付模式。 本期我们有幸邀请腾讯资深项目管理专家张小仿,为大家分享腾讯智慧出行车联网如何通过TAPD为团队管理立柱架梁,实现管理上的进化和蜕变。 对智慧出行团队来说,「云车一体」绝不是件容易事。车企合作项目量级大,强度高,要求严,这些都对团队持续交付提出了更高的要求。 在项目生命周期中,车联网团队在交付的各个环节曾面
TAPD敏捷研发
2022/09/23
8610
揭秘 | 腾讯智慧出行的持续交付三级跳
中国 SaaS 发展落后美国 10 年,仍需借助创新、开源、并购等策略发力 | ArchSummit
SaaS 企业的发展越来越受到关注,有的企业已经不再说是 SaaS 这个词,而是用“企业服务”来代替,更能突出这些创业企业的服务宗旨和核心理念。
深度学习与Python
2022/06/11
3900
中国 SaaS 发展落后美国 10 年,仍需借助创新、开源、并购等策略发力 | ArchSummit
得物卓越研发效能之路:原则、方法与实践全景揭秘
在当今互联网技术日新月异和企业降本增效的时代,研发效能已经成为衡量一个团队或组织竞争力的关键指标。提升研发效能不仅能加速产品上市时间,还能提高产品质量,增强客户满意度,持续提升企业竞争力。本文旨在介绍得物如何从原则、方法到成功实践,系统性提升研发效能的过程和经验。期待与行业专家深入探讨和交流,共同推动研发效能实践的新突破。
得物技术
2024/07/02
5620
得物卓越研发效能之路:原则、方法与实践全景揭秘
智加科技刘万千:技术与生态的成熟将推动自动驾驶的落地应用丨镁客请讲
刚过去的二月,自动驾驶领域接连传来了多家企业完成融资的好消息,合计超过107亿元的融资金额足以证明资本对这一领域看好。然而,比起资本更早预见这一领域大有可为的是投身于其中的万千从业者。
镁客网
2019/03/18
4560
智加科技刘万千:技术与生态的成熟将推动自动驾驶的落地应用丨镁客请讲
腾讯TAPD&信通院 金融研发管理交流会:AI赋能金融研发管理的智能跃迁
2025年3月14日,由腾讯与信通院联合主办的“AI时代下的金融研发管理交流会”在北京腾讯总部大厦盛大举行。本次会议以“深度推理重构效能:金融研发管理的智能跃迁——DeepSeek技术驱动的研发范式革新与行业实践”为主题,聚焦金融行业研发管理的前沿趋势与实战成果,吸引了众多行业专家、企业代表及金融科技同仁齐聚一堂,共同探讨AI技术如何为金融研发管理注入新动能。
TAPD敏捷研发
2025/03/19
2070
腾讯TAPD&信通院 金融研发管理交流会:AI赋能金融研发管理的智能跃迁
巧用TAPD自动化助手,get腾讯研发提效秘籍
日常工作中,面对工作流程中事务性强、繁琐复杂的工作,例如人工催进度,项目异常预警等,都需要一个可以解放双手,提高办公效率的智能工具平台。 今天,就来给大家介绍一下,在腾讯是如何通过TAPD「自动化助手」帮助大家从繁琐&重复的事务型工作中解放出来,专注主线,提升效率。 腾讯研发管理的秘密武器 自动化助手是TAPD推出的业务规则平台,提供开放灵活的规则指令,简洁易用的配置,用 「触发条件 + 执行动作」 的方式进行规则编排和执行。作为腾讯研发管理的秘密武器,TAPD自动化助手帮助处理繁琐流程,提升跨平台
TAPD敏捷研发
2021/05/17
2.7K0
方正证券项目管理进化三部曲
区别于互联网,金融行业的 IT 项目的特性为:项目周期长、项目量大、业务需求复杂、合规监管严格,同时与外部以及第三方的交互较多。在系统开发的方面,也需要和软件供应商或人力外包厂商等进行合作。这些特性决定了券商的项目管理和互联网有着天然属性上的不同。
TAPD敏捷研发
2022/03/02
7730
方正证券项目管理进化三部曲
不止《黑神话:悟空》!解密《英雄联盟手游》、《使命召唤手游》、《PUBGM》都在用的研发利器!
在数字化浪潮中,游戏行业凭借积极创新的精神和快速迭代能力始终站在技术革新的前沿。但面对快速变化的市场环境,如何持续提升开发效率、优化团队协作,灵活响应需求变化,依然是每个游戏企业必须面对的挑战。
TAPD敏捷研发
2024/12/05
1920
不止《黑神话:悟空》!解密《英雄联盟手游》、《使命召唤手游》、《PUBGM》都在用的研发利器!
从独角兽到上市:我们与TAPD的故事
盘点这些已经成功上市的独角兽企业,会发现他们都非常关注研发投入,重视自身研发效能的提升。想要在激烈的市场竞争中抢占先机,快速响应、高效交付至关重要。
TAPD敏捷研发
2019/03/20
6360
从独角兽到上市:我们与TAPD的故事
如何高效利用TAPD进行测试管理
在敏捷研发流程中,测试是确保产品质量的关键环节。TAPD(Tencent Agile Product Development)作为腾讯敏捷产品研发平台,提供了一整套项目管理和测试工具,帮助团队高效地进行测试管理。本文将介绍如何使用TAPD进行测试报告的编写和测试流程的管理。
用户11493597
2025/02/13
2170
2023年测试行业调查报告
2023年测试行业问卷调研有850左右同学参与,也许是受大环境影响戓其他因素的影响,较往年上千份的问卷反馈规模有所减少,但仍可以通过这近千份数据得出一些结论,来为测试行业发展的预判和个人职业发展规划做一些参考。
FunTester
2024/03/04
6280
2023年测试行业调查报告
大型项目研发经验分享:以3A游戏为例
导语|本文基于一款”3A“游戏的研发经验,以PM为视角,浅谈游戏工业化美术管理。针对美术工业化进行了降本,增效的个人管理经验总结,希望可以抛砖引玉与大家探讨。 本文作者:evvafan,腾讯IEG研发项目管理 前言 笔者有幸曾较长时间参与过一款“3A”游戏研发,该游戏预告于今年科隆展重磅亮相,本文将基于PM在项目中自己研发总结的方法论进行探讨分享。 前言部分将讲解:我对于3A游戏的理解,项目背景和项目诉求。 什么是3A? 对于3A有一个有意思的解释: A lot of Money, 大量投资, A lot
腾讯大讲堂
2022/12/13
1.5K0
大型项目研发经验分享:以3A游戏为例
有料|微信支付精益研发背后那些事儿
微信支付有着持续保持金融级高可用和业务高速发展双重要求。随着业务复杂性的提高和技术债务的不断增加,质量和速度在发展上的矛盾被不断激化,解决“效能问题”,提升系统应对不确定性的能力成了微信支付研发团队的燃眉之急。
TAPD敏捷研发
2021/12/09
1K0
有料|微信支付精益研发背后那些事儿
在日活10亿的产品做TPM实习生是怎样的体验?
这段实习经历,可能是不太幸运的2022年里最幸福的一件事。第一次接触到从前耳闻向往却不曾亲眼目睹的职业,这段体验极大程度地超出了我的预期,“成就他人”是贯穿我们行动的关键词。在这里,作为实习生,我也能得到充分的空间进行思考和行动。
KKCHANNEL
2023/03/08
7820
在日活10亿的产品做TPM实习生是怎样的体验?
微信支付团队精益研发实践总结
作者:宿海成 微信支付爆发式增长下潜藏怎样的效能「危机」?研效提升过程中,微信支付的策略及措施?人与工具如何有机结合,实现“稳又快”的精益研发?揭秘微信支付的精益研发破局之道。 一、背景介绍 1.1 微信支付爆发式增长下的效能问题及解决思路 微信支付有着持续保持金融级高可用和业务高速发展双重要求。随着业务复杂性的提高和技术债务的不断增加,质量和速度在发展上的矛盾被不断激化,解决“效能问题”,提升系统应对不确定性的能力成了微信支付研发团队的燃眉之急。 为了从根本上改善研发效能,微信支付研发团队参考了来自
腾讯技术工程官方号
2021/12/10
1K0
腾讯 TAPD DevOps 开放生态最佳实践
大家上午好,我是来自腾讯TEG的周仕林,今天主要跟大家分享的主题是腾讯TAPD DevOps开放生态最佳实践。我将从三方面做分享:
TAPD敏捷研发
2020/12/07
2.1K1
腾讯 TAPD DevOps 开放生态最佳实践
腾讯专有云研发过程首次披露
2018年11月3日,DevOps国际峰会于深圳圣淘沙酒店举行,上午的腾讯研发效能专场,开场前已座无虚席。由腾讯工蜂Git、腾讯TAPD、腾讯专有云三位产品/技术负责人带来各自产品在DevOps实践上的分享,这也是腾讯专有云首次披露研发过程。
腾讯技术工程官方号
2018/11/08
9.6K0
推荐阅读
相关推荐
星云棋布,步步为“赢”,IDC的“合纵连横”
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档