零基础入门Spark
吴磊
FreeWheel 机器学习研发经理
新⼈⾸单¥59.9
616 人已学习
课程目录
已更新 3 讲 / 共 33 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 入门Spark,你需要学会“三步走”
免费
基础知识 (2讲)
01|Spark:从“大数据的Hello World”开始
02 | RDD与编程模型:延迟计算是怎么回事?
零基础入门Spark
15
15
1.0x
00:00/00:00
登录|注册

02 | RDD与编程模型:延迟计算是怎么回事?

你好,我是吴磊。
在上一讲,我们一起开发了一个 Word Count 小应用,并把它敲入到 spark-shell 中去执行。Word Count 的计算步骤非常简单,首先是读取数据源,然后是做分词,最后做分组计数、并把词频最高的几个词汇打印到屏幕上。
如果你也动手实践了这个示例,你可能会发现,在 spark-shell 的 REPL 里,所有代码都是立即返回、瞬间就执行完毕了,相比之下,只有最后一行代码,花了好长时间才在屏幕上打印出 the、Spark、a、and 和 of 这几个单词。
针对这个现象,你可能会觉得很奇怪:“读取数据源、分组计数应该是最耗时的步骤,为什么它们瞬间就返回了呢?打印单词应该是瞬间的事,为什么这一步反而是最耗时的呢?”要解答这个疑惑,我们还是得从 RDD 说起。

什么是 RDD

为什么非要从 RDD 说起呢?首先,RDD 是构建 Spark 分布式内存计算引擎的基石,很多 Spark 核心概念与核心组件,如 DAG 和调度系统都衍生自 RDD。因此,深入理解 RDD 有利于你更全面、系统地学习 Spark 的工作原理。
其次,尽管 RDD API 使用频率越来越低,绝大多数人也都已经习惯于 DataFrame 和 Dataset API,但是,无论采用哪种 API 或是哪种开发语言,你的应用在 Spark 内部最终都会转化为 RDD 之上的分布式计算。换句话说,如果你想要对 Spark 作业有更好的把握,前提是你要对 RDD 足够了解。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/1000字
划线
笔记
复制
该试读文章来自付费专栏《零基础入门Spark》,如需阅读全部文章,
请订阅文章所属专栏新⼈⾸单¥59.9
立即订阅
登录 后留言

精选留言

由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论
返回
顶部