您现在的位置: 首页 / 产品中心/ 华章分社/ Flink技术内幕:架构设计与实现原理

Flink技术内幕:架构设计与实现原理

ISBN:978-7-111-69629-2

作者:罗江宇 等著

定价:¥99.00

本站图书均由机械工业出版社旗下电子商务网站提供

图书详情
内容提要
目录
CIP
这是一部从源代码角度出发,通过分析Flink的各个功能模块的实现来剖析Flink的架构设计和实现原理的著作。它将能指导读者更好地对Flink进行性能调优、可用性保障、效能优化和二次开发。
四位作者都是非常资深的Flink专家,部分作者是Flink源代码的维护者和改造者,本书总结了他们在阿里巴巴、蚂蚁集团、滴滴等企业的大规模Flink实践经验。
全书共11章,主要内容如下。
第1章 阅读Flink源代码前的准备
主要介绍了Flink源代码的获取、编译、调试,以及它的目录结构、设计理念和基本架构。此外,还分析了Flink与Hadoop MapReduce、Spark在设计上的差异。
第2~8章 Flink功能模块源代码和架构解析
从源代码角度分析了Flink的编程模型与API、运行时组件与通信、状态管理与容错、任务提交与执行、Flink网络栈、Flink Connector、部署模式等功能模块的原理。力求让读者深入理解Flink的原理,而不只是跟着本书读一遍Flink源代码。原理和思想是不局限于某一个框架和技术的,了解了Flink的原理和思想,可以将其扩展到其他框架和技术上。
第9~10章 Flink Table、SQL与Flink CEP
编程方式逐渐从原先基于Map-Reduce的任务模式向SQL化演进,SQL意味着标准和效率。这两章重点讲解了StreamTableEnvironment的实现过程、SQL的解析过程、Table Connector以及Flink CEP的内部实现原理。
第11章 Flink监控
主要讲解了Flink的监控指标、常用系统指标和监控体系的建设,以及常用的定位手段。
前 言
第1章 阅读Flink源代码前的准备  1
1.1 环境准备  1
1.2 获取、编译和调试Flink的源代码  4
1.2.1 获取与导入Flink源代码  4
1.2.2 编译与调试Flink源代码  6
1.3 Flink源代码的目录结构  9
1.4 Flink设计理念与基本架构  11
1.4.1 Flink与主流计算引擎对比  11
1.4.2 Flink基本架构  14
1.5 本章小结  17
第2章 编程模型与API  18
2.1 DataStream  18
2.2 算子  21
2.3 窗口  28
2.3.1 窗口的基本概念  28
2.3.2 窗口的执行流程  30
2.3.3 窗口分配器  32
2.3.4 触发器  37
2.3.5 窗口函数  41
2.4 本章小结  43
第3章 运行时组件与通信  44
3.1 运行时组件  44
3.1.1 REST  45
3.1.2 Dispatcher  54
3.1.3 ResourceManager  61
3.1.4 JobMaster  75
3.1.5 TaskExecutor  85
3.2 组件间通信  95
3.2.1 Akka与Actor模型  95
3.2.2 组件间通信实现  99
3.3 运行时组件的高可用  117
3.3.1 Master节点上组件的高可用  117
3.3.2 现有运行时组件高可用存在的问题及其解决方案  126
3.4 本章小结  128
第4章 状态管理与容错  129
4.1 状态  129
4.1.1 状态的原理与实现  129
4.1.2 状态生存时间的原理与实现  134
4.2 检查点  137
4.2.1 检查点机制原理  137
4.2.2 检查点执行过程  137
4.2.3 任务容错  140
4.3 状态后端  143
4.4 本章小结  148
第5章 任务提交与执行  149
5.1 任务提交整体流程  149
5.2 DAG转换  152
5.2.1 DAG的4层转换  152
5.2.2 WordCount转换过程  152
5.3 Slot分配  160
5.3.1 相关概念和实现类  160
5.3.2 Slot申请流程  162
5.3.3 任务部署  168
5.4 任务执行机制  170
5.4.1 任务执行过程  170
5.4.2 MailBox线程模型  174
5.5 本章小结  177
第6章 Flink网络栈  178
6.1 内存管理  178
6.2 网络传输  182
6.2.1 什么是Flink网络栈  182
6.2.2 非流控模型的网络传输流程  184
6.2.3 流控模型的网络传输流程  197
6.3 流批一体的shuffle架构  199
6.3.1 生命周期管理  199
6.3.2 数据shuffle  207
6.4 本章小结  208
第7章 Flink Connector的设计与实现  209
7.1 Kafka Connector实现原理  209
7.1.1 Kafka Source Connector实现  209
7.1.2 Kafka Sink Connector 实现  216
7.2 HBase Table Connector 实现原理  220
7.2.1 HBase Source Connector和Sink Connector的工厂实现  221
7.2.2 HBase维表实现  222
7.3 本章小结  224
第8章 部署模式  225
8.1 Local部署  225
8.2 Standalone部署  228
8.3 Flink on YARN模式  240
8.3.1 YARN基本架构  240
8.3.2 Flink on YARN模式介绍  241
8.3.3 Flink on YARN启动过程  243
8.4 Flinkon Kubernetes模式  260
8.5 本章小结  265
第9章 Flink Table与SQL  266
9.1 StreamTableEnvironment类介绍  266
9.1.1 StreamExecution-Environment类   267
9.1.2 EnvironmentSettings类  267
9.1.3 TableConfig类  268
9.1.4 StreamTableEnvironment的创建过程  269
9.2 SQL解析过程  270
9.2.1 SQL解析  270
9.2.2 SQL优化  277
9.2.3 RelNode转换  279
9.3 Table Connector  281
9.3.1 TableSource  282
9.3.2 TableSink  286
9.3.3 SPI机制在Table Connector中的应用  288
9.4 UDF与内置算子  292
9.4.1 UDF  292
9.4.2 内置算子  294
9.5 本章小结  297
第10章 Flink CEP 原理解析  298
10.1 CEP的基本概念  298
10.1.1 什么是Flink CEP  298
10.1.2 Pattern  298
10.1.3 量词  300
10.1.4 条件  301
10.1.5 连接  302
10.1.6 Flink CEP作业编写举例  302
10.2 CEP内部实现原理  304
10.2.1 NFA简介  305
10.2.2 匹配过程  305
10.2.3 CEP状态存储  310
10.2.4 CEP和SQL结合  313
10.3 本章小结  315
第11章 Flink监控  316
11.1 监控指标  316
11.1.1 指标类型  316
11.1.2 系统指标及自定义指标  318
11.1.3 指标的使用  319
11.2 常用系统指标  322
11.3 监控体系建设  324
11.3.1 指标监控及展示  324
11.3.2 日志分析处理  326
11.3.3 定位手段  326
11.4 本章小结  327
图书在版编目(CIP)数据
Flink技术内幕:架构设计与实现原理/罗江宇等著. --北京:机械工业出版社,2022.1
(大数据技术丛书)
ISBN 978-7-111-69629-2
I. ①F… II.①罗… III. ①数据处理软件 IV. ①TP274
中国版本图书馆CIP数据核字(2021)第242643号
相关图书
浏览此书同时浏览过的图书