《Flink技术内幕:架构设计与实现原理罗江宇,赵士杰,李涵淼,闵文俊》[52M]百度网盘|pdf下载|亲测有效
《Flink技术内幕:架构设计与实现原理罗江宇,赵士杰,李涵淼,闵文俊》[52M]百度网盘|pdf下载|亲测有效

Flink技术内幕:架构设计与实现原理罗江宇,赵士杰,李涵淼,闵文俊 pdf下载

出版社 博库网旗舰店
出版年 2021-12
页数 390页
装帧 精装
评分 8.8(豆瓣)
8.99¥ 10.99¥

内容简介

本篇主要提供Flink技术内幕:架构设计与实现原理罗江宇,赵士杰,李涵淼,闵文俊电子书的pdf版本下载,本电子书下载方式为百度网盘方式,点击以上按钮下单完成后即会通过邮件和网页的方式发货,有问题请联系邮箱ebook666@outlook.com

基本信息

  • 商品名称:Flink技术内幕:架构设计与实现原理
  • 作者:罗江宇,赵士杰,李涵淼,闵文俊
  • 定价:99
  • 出版社:机械工业
  • 书号:9787111696292

其他参考信息(以实物为准)

  • 出版时间:2021-12-01
  • 印刷时间:2021-12-01
  • 版次:1
  • 印次:1
  • 开本:16开
  • 页数:

编辑推荐语

作者背景 :4位作者均是Flink的早期实践者和布道者,不仅参与了 早期的Flink项目,而且参与Flink源码的维护和改造。 大厂经验总结:作者在阿里巴巴、蚂蚁集团、滴滴等企业参与和 了多个Flink项目从0到1的过程,本书是他们在这些企业大规模应用Flink的经验总结。 源码全面剖析:本书从源码角度深入剖析了Flink各功能模块的架构与实现,能指导读者 好地进行性能调优、可用性保障、效能优化、二次开发

内容提要

内容简介<br>这是一部从源代码角度出发,通过分析Flink的各个功能模块的实现来剖析Flink的架构设计和实现原理的著作。它将能指导读者 好地对Flink进行性能调优、可用性保障、效能优化和二次开发。<br>四位作者都是 的Flink专家,部分作者是Flink源代码的维护者和改造者,本书总结了他们在阿里巴巴、蚂蚁集团、滴滴等企业的大规模Flink实践经验。<br>全书共11章,主要内容如下。<br>第1章 阅读Flink源代码前的准备<br>主要介绍了Flink源代码的获取、编译、调试,以及它的目录结构、设计理念和基本架构。此外,还分析了Flink与Hadoop MapReduce、Spark在设计上的差异。<br>第2~8章 Flink功能模块源代码和架构解析<br>从源码角度分析了Flink的编程模型与API、运行时组件与通信、状态管理与容错、任务提交与执行、Flink网络栈、Flink Connector、部署模式等功能模块的原理。力求让读者深入理解Flink的原理,而不只是跟着本书读一遍Flink源代码。原理和思想是不局限于某一个框架和技术,了解了Flink的原理和思想,可以将其扩展到其他框架和技术上。<br>第9~10章 Flink Table、SQL与Flink CEP<br>编程方式逐渐从原先基于Map-Reduce的任务模式向SQL化演进,SQL意味着标准和效率。这两章重点讲解了StreamTableEnvironment的实现过程、SQL的解析过程、Table Connector以及Flink CEP的内部实现原理。<br> 1章 Flink监控<br>主要讲解了Flink的监控指标、常用系统指标和监控体系的建设,以及常用的定位手段。

作者简介

作者简介<br>罗江宇<br>Flink技术专家,先后就职于新浪微博、滴滴和某大型电商公司。先后 或参与了多家公司的Flink实时计算服务的构建、对超大规模集群的维护以及Flink引擎的改造。拥有丰富的实时计算实战经验,目前专注于Kubernetes调度、Flink SQL及Flink流批一体化方向。<br>赵士杰<br> 大数据技术专家,曾就职于滴滴、阿里巴巴等一线互联网公司。从0到1深度参与了滴滴的大数据建设,拥有 丰富的大数据平台一线建设经验,对于大数据领域的计算和存储引擎也有深入研究。<br>李涵淼<br>大数据研发专家,曾任滴滴大数据开发工程师。从事大数据领域工作多年,参与过多家公司流计算平台的设计与研发,目前专注于批流一体、OLAP技术方向的研究与应用。<br>闵文俊<br>蚂蚁集团技术专家、开源大数据社区爱好者、Flink Contributor,在实时计算领域工作多年,深度参与了滴滴、蚂蚁集团的实时计算平台建设。

目录

前 言<br/>第1章 阅读Flink源代码前的准备 1<br/>1.1 环境准备 1<br/>1.2 获取、编译和调试Flink的源代码 4<br/>1.2.1 获取与导入Flink源代码 4<br/>1.2.2 编译与调试Flink源代码 6<br/>1.3 Flink源代码的目录结构 9<br/>1.4 Flink设计理念与基本架构 11<br/>1.4.1 Flink与主流计算引擎对比 11<br/>1.4.2 Flink基本架构 14<br/>1.5 本章小结 17<br/>第2章 编程模型与API 18<br/>2.1 DataStream 18<br/>2.2 算子 21<br/>2.3 窗口 28<br/>2.3.1 窗口的基本概念 28<br/>2.3.2 窗口的执行流程 30<br/>2.3.3 窗口分配器 32<br/>2.3.4 触发器 37<br/>2.3.5 窗口函数 41<br/>2.4 本章小结 43<br/>第3章 运行时组件与通信 44<br/>3.1 运行时组件 44<br/>3.1.1 REST 45<br/>3.1.2 Dispatcher 54<br/>3.1.3 ResourceManager 61<br/>3.1.4 JobMaster 75<br/>3.1.5 TaskExecutor 85<br/>3.2 组件间通信 95<br/>3.2.1 Akka与Actor模型 95<br/>3.2.2 组件间通信实现 99<br/>3.3 运行时组件的高可用 117<br/>3.3.1 Master节点上组件的高可用 117<br/>3.3.2 现有运行时组件高可用存在的问题及其解决方案 126<br/>3.4 本章小结 128<br/>第4章 状态管理与容错 129<br/>4.1 状态 129<br/>4.1.1 状态的原理与实现 129<br/>4.1.2 状态生存时间的原理与实现 134<br/>4.2 检查点 137<br/>4.2.1 检查点机制原理 137<br/>4.2.2 检查点执行过程 137<br/>4.2.3 任务容错 140<br/>4.3 状态后端 143<br/>4.4 本章小结 148<br/>第5章 任务提交与执行 149<br/>5.1 任务提交整体流程 149<br/>5.2 DAG转换 152<br/>5.2.1 DAG的4层转换 152<br/>5.2.2 WordCount转换过程 152<br/>5.3 Slot分配 160<br/>5.3.1 相关概念和实现类 160<br/>5.3.2 Slot申请流程 162<br/>5.3.3 任务部署 168<br/>5.4 任务执行机制 170<br/>5.4.1 任务执行过程 170<br/>5.4.2 MailBox线程模型 174<br/>5.5 本章小结 177<br/>第6章 Flink网络栈 178<br/>6.1 内存管理 178<br/>6.2 网络传输 182<br/>6.2.1 什么是Flink网络栈 182<br/>6.2.2 非流控模型的网络传输流程 184<br/>6.2.3 流控模型的网络传输流程 197<br/>6.3 流批一体的shuffle架构 199<br/>6.3.1 生命周期管理 199<br/>6.3.2 数据shuffle 207<br/>6.4 本章小结 208<br/>第7章 Flink Connector的设计与实现 209<br/>7.1 Kafka Connector实现原理 209<br/>7.1.1 Kafka Source Connector实现 209<br/>7.1.2 Kafka Sink Connector 实现 216<br/>7.2 HBase Table Connector 实现原理 220<br/>7.2.1 HBase Source Connector和Sink Connector的工厂实现 221<br/>7.2.2 HBase维表实现 222<br/>7.3 本章小结 224<br/>第8章 部署模式 225<br/>8.1 Local部署 225<br/>8.2 Standalone部署 228<br/>8.3 Flink on YARN模式 240<br/>8.3.1 YARN基本架构 240<br/>8.3.2 Flink on YARN模式介绍 241<br/>8.3.3 Flink on YARN启动过程 243<br/>8.4 Flinkon Kubernetes模式 260<br/>8.5 本章小结 265<br/>第9章 Flink Table与SQL 266<br/>9.1 StreamTableEnvironment类介绍 266<br/>9.1.1 StreamExecution-Environment类 267<br/>9.1.2 EnvironmentSettings类 267<br/>9.1.3 TableConfig类 268<br/>9.1.4 StreamTableEnvironment的创建过程 269<br/>9.2 SQL解析过程 270<br/>9.2.1 SQL解析 270<br/>9.2.2 SQL优化 277<br/>9.2.3 RelNode转换 279<br/>9.3 Table Connector 281<br/>9.3.1 TableSource 282<br/>9.3.2 TableSink 286<br/>9.3.3 SPI机制在Table Connector中的应用 288<br/>9.4 UDF与内置算子 292<br/>9.4.1 UDF 292<br/>9.4.2 内置算子 294<br/>9.5 本章小结 297<br/> 0章 Flink CEP 原理解析 298<br/>10.1 CEP的基本概念 298<br/>10.1.1 什么是Flink CEP 298<br/>10.1.2 Pattern 298<br/>10.1.3 量词 300<br/>10.1.4 条件 301<br/>10.1.5 连接 302<br/>10.1.6 Flink CEP作业编写举例 302<br/>10.2 CEP内部实现原理 304<br/>10.2.1 NFA简介 305<br/>10.2.2 匹配过程 305<br/>10.2.3 CEP状态存储 310<br/>10.2.4 CEP和SQL结合 313<br/>10.3 本章小结 315<br/> 1章 Flink监控 316<br/>11.1 监控指标 316<br/>11.1.1 指标类型 316<br/>11.1.2 系统指标及自定义指标 318<br/>11.1.3 指标的使用 319<br/>11.2 常用系统指标 322<br/>11.3 监控体系建设 324<br/>11.3.1 指标监控及展示 324<br/>11.3.2 日志分析处理 326<br/>11.3.3 定位手段 326<br/>11.4 本章小结 327