Apache Spark 基础知识总结及应用示例

本文详细介绍了Apache Spark的核心概念,包括编程模型、RDD的定义、转换与操作,以及RDD与其他数据结构的区别。重点讲解了Spark的内部逻辑,如Job、Stage和Task,强调了RDD的不可变性和血统。此外,文章还探讨了Spark Streaming与Flink的对比,以及水印在 OUTER JOIN 中的重要性。最后,通过实例展示了RDD的实战应用,包括数据上传、转换操作和查询示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1、Spark编程模型

1.1 术语定义

1.2 模型组成

1.2.1 Driver部分

1.2.2 Executor部分

1.2.2.1 原生数据

1.2.2.2 RDD

1.2.2.3 共享变量

1.2.3 内部逻辑概念 

1.2.3.1 job

1.2.3.2 stage

1.2.3.3 task

2、RDD

2.1 术语定义

2.2 RDD概念

2.2.1 RDD的特点

2.2.2 RDD基础数据类型

2.2.3 例子:控制台日志挖掘

2.3 转换与操作

2.3.1 转换

2.3.2 操作

2.4 依赖类型

2.5 RDD缓存

3、RDD, DF, DS的关系和区别

1)RDD

优点

缺点

2)DataFrame

3)DataSet

三者之间的联系和区别

4 、Spark Streaming介绍

4.1Flink和Saprk的对比

4.2对于 Inner-Join 而言,加水印是可选的, Outer-Join 是必须的

5、RDD动手实战

5.1 上传测试数据

5.2 转换与操作

5.2.1 并行化集合例子演示

5.2.2 Shuffle操作例子演示

5.2.3 搜狗日志查询例子演示

6、学习总结


1、Spark编程模型

1.1 术语定义

应用程序(Application): 基于Spark的用户程序,包含了一个Driver Program 和集群中多个的Executor;

驱动程序(Driver Program):运行Application的main()函数并且创建SparkContext,通常用SparkContext代表Driver Program;

执行单元(Executor): 是为某Application运行在Worker Node上的一个进程,该进程负责运行Task,并且负责将数据存在内存或者磁盘上,每个Application都有各自独立的Executors;

集群管理程序(Cluster Manager): 在集群上获取资源的外部服务(例如:Standalone、Mesos或Yarn);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据与算法架构提升之路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值