20、流处理案例实战:分析纽约市出租车载客信息

你好,我是蔡元楠。 今天我要与你分享的主题是“流处理案例实战:分析纽约市出租车载客信息”。 在上一讲中,我们结合加州房屋信息的真实数据集,构建了一个基本的预测房价的线性回归模型。通过这个实例,我们不仅学习了处理大数据问题的基本流程,而且还进一步熟练了...

大规模数据处理实战

21、深入对比Spark与Flink:帮你系统设计两开花

你好,我是蔡元楠。 今天我要与你分享的主题是“深入对比Spark与Flink”。 相信通过这一模块前9讲的学习,你对Spark已经有了基本的认识。现在,我们先来回顾整个模块,理清一下思路。 首先,从MapReduce框架存在的问题入手,我们知道了Sp...

大规模数据处理实战

22、Apache Beam的前世今生

你好,我是蔡元楠。 今天我要与你分享的主题是“ Apache Beam的前世今生”。 从这一讲开始,我们将进入一个全新的篇章。在这一讲中,我将会带领你了解Apache Beam的完整诞生历程。 让我们一起来感受一下,Google是如何从处理框架上的一...

大规模数据处理实战

23、站在Google的肩膀上学习Beam编程模型

你好,我是蔡元楠。 今天我要与你分享的话题是“站在Google的肩膀上学习Beam编程模型”。 在上一讲中,我带你一起领略了Apache Beam的完整诞生历史。通过上一讲,你应该对于Apache Beam在大规模数据处理中能够带来的便利有了一定的了...

大规模数据处理实战

24、PCollection:为什么Beam要如此抽象封装数据

你好,我是蔡元楠。 今天我要与你分享的主题是“为什么Beam要如此抽象封装数据”。 很多人在刚开始接触Apache Beam的时候,都会觉得这里面的概念太抽象了。什么PCollection、PValue、Transform……这都是些什么?尤其是PC...

大规模数据处理实战

25、Transform:Beam数据转换操作的抽象方法

你好,我是蔡元楠。 今天我要与你分享的主题是“Beam数据转换操作的抽象方法”。 在上一讲中,我们一起学习了Beam中数据的抽象表达——PCollection。但是仅仅有数据的表达肯定是无法构建一个数据处理框架的。那么今天,我们就来看看Beam中数据...

大规模数据处理实战

26、Pipeline:Beam如何抽象多步骤的数据流水线

你好,我是蔡元楠。 今天我要与你分享的主题是“Pipeline:Beam如何抽象多步骤的数据流水线”。 在上两讲中,我们一起学习了Beam是如何抽象封装数据,以及如何抽象对于数据集的转换操作的。在掌握了这两个基本概念后,我们就可以很好地回答Beam编...

大规模数据处理实战

27、Pipeline I、O: Beam数据中转的设计模式

你好,我是蔡元楠。 今天我要与你分享的主题是“Pipeline I/O: Beam数据中转的设计模式”。 在前面的章节中,我们一起学习了如何使用PCollection来抽象封装数据,如何使用Transform来封装我们的数据处理逻辑,以及B...

大规模数据处理实战

28、如何设计创建好一个Beam Pipeline

你好,我是蔡元楠。 今天我要与你分享的主题是“如何设计创建好一个Beam Pipeline”。 这一讲我们会用到[第7讲]中介绍过的四种常见设计模式——复制模式、过滤模式、分离模式和合并模式。这些设计模式就像是武功的基本套路一样,在实战中无处不在。今...

大规模数据处理实战

29、如何测试Beam Pipeline

你好,我是蔡元楠。 今天我要与你分享的主题是“如何测试Beam Pipeline”。 在上一讲中,我们结合了第7讲的内容,一起学习了在Beam的世界中我们该怎么设计好对应的设计模式。而在今天这一讲中,我想要讲讲在日常开发中经常会被忽略的,但是又非常重...

大规模数据处理实战