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

相关推荐
闹小艾4 小时前
舞蹈教培机构小程序零基础制作开发全流程教程
大数据·小程序
阿乔外贸日记4 小时前
2026尼日利亚五项清关政策更新,拉高能源装备进口综合成本
大数据·人工智能·搜索引擎·智能手机·云计算·能源
暴躁小师兄数据学院5 小时前
【AI大数据工程师特训笔记】第12讲:表分区与索引
大数据·笔记·sql·postgresql
侃谈科技圈5 小时前
破除数据中台落地困境:2026数据治理平台差异化能力与选型决策指南
大数据·人工智能
Elastic 中国社区官方博客5 小时前
Elasticsearch DiskBBQ:使用原生 SIMD Blocks 实现快 40% 的向量评分计算
大数据·人工智能·elasticsearch·搜索引擎·ai·全文检索·diskbbq
暴躁小师兄数据学院6 小时前
【AI大数据工程师特训笔记】第16讲:大数据环境安装
大数据·hadoop·笔记·flink·spark·database
豆豆6 小时前
垂直行业门户网站搭建解决方案与落地实操指南
大数据·cms·pageadmin·自定义模型·垂直门户·行业建站·站群建设
Elastic 中国社区官方博客7 小时前
Kibana:使用 AI Chat 及 MCP 轻松创建 AI 原生仪表板
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·信息可视化
Thomas_YXQ7 小时前
Unity无GC读取图片与网格完整方案
大数据·人工智能·unity·微信·产品运营
189228048618 小时前
NV023固态MT29F16T08GWLCEJ9-QBES:C
大数据·服务器·人工智能·科技·缓存