Spark总结

概念:

Spark 是一种基于内存的快速、通用、可扩展的大数据分析计算引擎

  • Spark

Spark 是一种由 Scala 语言开发的快速、通用、可扩展的大数据分析引擎

Spark Core 中提供了 Spark 最基础与最核心的功能

Spark SQL 是 Spark 用来操作结构化数据的组件。通过 Spark SQL,用户可以使用SQL 或者 Apache Hive 版本的 SQL 方言(HQL)来查询数据。

Spark Streaming 是 Spark 平台上针对实时数据进行流式计算的组件,提供了丰富的处理数据流的 API

Spark核心模块

(一)Spark Core​

Spark Core 是 Spark 的基础核心,除了提供任务调度、内存管理、数据分发等基本功能外,还包含了 RDD 的核心实现。它是整个 Spark 生态系统的基石,其他组件如 Spark SQL、Spark Streaming 等都是基于 Spark Core 构建的。Spark Core 支持在不同的集群资源管理器上运行,具备良好的扩展性和兼容性,能够满足各种规模的大数据处理任务需求

(二)Spark SQL​

Spark SQL 主要用于处理结构化数据,支持标准的 SQL 查询语法以及基于 DataFrame 和 Dataset 的编程接口。它可以将 SQL 查询转换为底层的 RDD 操作进行执行,同时支持与 Hive 的元数据交互,能够读写 Hive 表数据,实现 Hive 与 Spark 的无缝集成

Spark SQL 具备强大的查询优化能力,通过 Catalyst 优化器对 SQL 语句进行语法分析、逻辑优化和物理优化,生成高效的执行计划。此外,它还支持多种数据源,包括 JSON、CSV、Parquet 格式的数据文件,以及关系型数据库,方便用户从不同数据源读取和写入结构化数据

(三)Spark Streaming​

Spark Streaming 是 Spark 的实时流处理组件,采用离散化流(Discretized Stream,DStream)的抽象概念,将连续的流数据分割成一个个小的批次(batch)进行处理,每个批次数据可看作一个 RDD。虽然 Spark Streaming 处理的是流数据,但本质上仍然基于 Spark Core 的批处理机制,这种设计使得 Spark Streaming 能够利用 Spark 的诸多优化技术和生态组件。​

在实际应用中,Spark Streaming 可以对接多种数据源,如 Kafka、Flume 等,实时接收数据并进行处理。支持的操作包括窗口操作(如滑动窗口计算)、状态操作(如维护聚合状态)等,广泛应用于实时监控、实时日志分析、实时推荐等领域

(四)Spark MLlib

MLlib 是 Spark 提供的一个机器学习算法库。MLlib 不仅提供了模型评估、数据导入等额外的功能,还提供了一些更底层的机器学习原语

(五)Spark GraphX

GraphX 是 Spark 面向图计算提供的框架与算法库

RDD

RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是 Spark 中最基本的数据处理模型。代码中是一个抽象类,它代表一个弹性的、不可变、可分区、里面的元素可并行计算的集合

特性:弹性;分布式;数据集;数据抽象;不可变;可分区、并行计算

RDD序列化:

1、闭包检查

2、序列化方法和属性

3、Kryo序列化框架

RDD依赖关系

1)RDD血缘关系

2)RDD依赖关系

3)RDD窄依赖

4)RDD宽依赖

5)RDD阶段划分

6)RDD任务划分

相关推荐
飞飞传输几秒前
机器人行业数据流转深度研究:内外网数据摆渡平台应用现状与趋势
大数据·运维·安全
长谷深风1116 分钟前
Agent 何时该 Replan:五个关键判断
java·大数据·开发语言·ai agent·ai智能体·agent设计·clarify机制
数据库小学妹23 分钟前
集群与分布式啥区别?从主从集群到分布式实战
分布式·分布式数据库·数据库架构·集群·分库分表·主从集群·集群与分布式
兴趣使然黄小黄26 分钟前
【AI-agent】让 AI 输出可依赖:LLM 工程化的四道防线
大数据·人工智能
江畔柳前堤33 分钟前
AgentScope 设计与原理全解:从消息原语到分布式智能体工程底座
大数据·人工智能·分布式·目标检测·机器学习·语言模型·架构
Elastic 中国社区官方博客36 分钟前
跳过有状态的 OTel Collector:Elasticsearch 9.5 原生存储两种指标时间类型
大数据·人工智能·elasticsearch·搜索引擎·重构·全文检索
萧瑟余晖38 分钟前
Java深入解析篇三十四之分布式事务
java·开发语言·分布式
2301_7803567044 分钟前
【技术解码】全视通“物联数据中台”如何打通医养结合全链路?
大数据·人工智能·物联网
Keystone_Onion1 小时前
中大件海外仓路由优化:基于5大仓群联动的美国海外仓尾程降本方案
大数据
中科同志科技先进封装1 小时前
芯片打样与封装中试:赋能高校科研与初创公司跨越“从设计到样品”鸿沟
大数据·其他