01
学习流式数据处理的神书
· 企业需要更快地从数据中获取洞见,转向流式处理是降低延迟的有效手段。
· 采用为无界数据而生的系统处理日益普遍的大型数据集,更为得心应手。
· 数据即时处理让系统负荷在时间上分散,实现资源消耗的均衡和可预测性。
.....
▼点击下方,即可购书
02
如何通过这本书入门
Tyler Akidau
他是谷歌公司数据处理语言与系统团队的技术负责人,负责谷歌的Cloud Dataflow、Apache Beam,以及谷歌内部的数据处理系统,如Flume、MillWheel和MapReduce。他还是 Apache Beam PMC 的创始成员之一,也是2015 年Dataflow 模型论文以及 “Streaming 101”和“Streaming 102”文章的作者。
Slava Chernyak
他是谷歌MillWheel 团队的长期成员,后来是 MillWheel 系统的继任者 Windmill 团队的创始成员,这一至今尚未命名的系统主要负责支撑谷歌的 Cloud Dataflow 中的流式引擎。他是当今世界在流处理系统中水位和时间语义方面最顶尖的专家之一。
Reuven Lax
他曾发起并领导谷歌在通用流处理引擎领域几乎所有的系统级技术创新,其中包括他投入大量精力去研究在使用细粒度检查点的系统上提供高吞吐量、低延时、精确一次的语义。他曾是MillWheel 团队的长期成员和负责人,还创立并领导了负责 Windmill 的团队。他也是Apache Beam PMC成员。
· 第1章奠定流处理的基本概念,定义专业术语,评估流系统的功能,区分处理时间和事件时间,并探究标准数据处理模式。
· 第2章详尽阐释处理乱序数据的核心理念,逐项深入定义、定位、时机与方法,并利用动画展示时间维度。
· 第3章深究时间进度的度量、度量方法及其在流水线中的传递方式,结尾部分剖析两个实际案例中的水位线应用。
· 第4章延续第2章的内容,进一步讨论高级窗口技术和触发器,例如处理时间窗口、会话窗口和持续触发器。
· 第5章探讨了实现端到端精确一次(或称有效一次)处理的挑战,并深入分析了Apache Flink、Apache Spark和谷歌Cloud Dataflow三种实现方法的细节。
· 第6章阐释流和表的基本概念,从流和表的视角重新审视MapReduce,构建普适的流表理论,全面覆盖Beam模型。
· 第7章探讨引入持久状态的动因,分析两种隐式状态,并以广告归因为例,引出状态管理的关键特性。
· 第8章考察关系代数和SQL中的流式含义,比较Beam模型与经典SQL在表和流设计上的倾向,并提出将流式语义整合入SQL的途径。
· 第9章研究多样的连接类型,探讨它们在流式上下文中的行为,特别关注时间有效性窗口这一在流式连接中有用但未广泛采纳的场景。
· 第10章快速回顾了MapReduce数据处理系统的重要历史时刻,并且好好聊了聊那些让流式系统发展到今天的关键点。
03
大神们告诉你不能错过的三个重点
面对复杂的流式系统,学习时抓住核心是关键。大神们也深谙此道,不仅在每个章节的最后帮我们进行总结,还标出了学习重点。
流和表的基础:流表相对性的特殊理论
本书的核心在于流表理论,理解流与表的相互联系至关重要。所有其他概念都是基于此构建的。
时变关系启发大家新的思考方式。
时变关系是流式处理的核心特征,它不仅体现了构建流系统的所有功能,还把我们熟悉的批处理工具与流处理紧密相连。
一个编写精良的分布式流式引擎是充满魔力的。
信息丰富的代码片段
说明性动画演示
▼点击下方,即可购书
分享你学习流式系统的小技巧
在留言区参与互动,并点击在看和转发活动到朋友圈,我们将选1名读者获得e读版电子书1本,截止时间11月15日。