上QQ阅读APP看书,第一时间看更新
第一部分 设计思想篇
第1章 序篇
目前在生产环境中可供选择的大数据分布式计算框架层出不穷,其中较为流行、稳定且性能最良好的开源框架包括MapReduce和Spark,它们几乎分别成为批量计算和微批计算的行业标准。而且Spark经过多年的发展,在流式计算领域也有着优异的表现。
虽然Spark在多种计算场景下有着不俗的性能表现,但是由于它早期是用于批量计算的,因此在底层架构、数据抽象等方面仍不可避免地保留了许多批量计算的概念。Flink的诞生并不比Spark晚,不过由于它在设计之初就真正将数据当作数据流而非数据集来处理,因此可以说在流式计算方面,Flink拥有比Spark更加先进的计算模型。此外,Flink以流处理为基础,对批处理也有很好的支持。许多人说“Flink是(继Spark之后的)下一代大数据处理引擎”,这并非噱头。本书会从Flink的计算封装逻辑、执行图的生成、数据的交换、状态容错、窗口计算等各方面对这一说法进行全面且深入的探讨。
本章旨在让读者对Flink有总体的了解,以为接下来的学习打好基础。
希望在学习完本章后,读者能够了解:
● Flink的发展历史;
● Flink支持的应用场景;
● Flink的核心特性;
● Flink的架构;
● 实现Flink源码的基本技巧。