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任务划分

相关推荐
蒸汽求职5 小时前
机器人软件工程(Robotics SDE):特斯拉Optimus落地引发的嵌入式C++与感知算法人才抢夺战
大数据·c++·算法·职场和发展·机器人·求职招聘·ai-native
诸葛务农5 小时前
AGI 主要技术路径及核心技术:归一融合及未来之路5
大数据·人工智能
J2虾虾7 小时前
数据分析师课程
大数据
大力财经7 小时前
纳米漫剧流水线接入满血版Seedance 2.0 实现工业级AI漫剧确定性交付
大数据·人工智能
AI周红伟8 小时前
OpenClaw是什么?OpenClaw能做什么?OpenClaw详细介绍及保姆级部署教程-周红伟
大数据·运维·服务器·人工智能·微信·openclaw
Elastic 中国社区官方博客8 小时前
当 TSDS 遇到 ILM:设计不会拒绝延迟数据的时间序列数据流
大数据·运维·数据库·elasticsearch·搜索引擎·logstash
Omics Pro8 小时前
虚拟细胞:开启HIV/AIDS治疗新纪元的关键?
大数据·数据库·人工智能·深度学习·算法·机器学习·计算机视觉
沐风___9 小时前
Claude Code 权限模式完全指南:Auto、Bypass、Ask 三模式深度解析
大数据·elasticsearch·搜索引擎
qq_54702617910 小时前
LangChain 工具调用(Tool Calling)
java·大数据·langchain