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

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

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

本书四位作者都是非常资深的Flink专家,部分作者是Flink源代码的维护者和改造者,本书总结了他们在阿里巴巴、蚂蚁集团、滴滴等企业的大规模Flink实践经验。

内容简介

这是一部从源代码角度出发,通过分析Flink的各个功能模块的实现来剖析Flink的架构设计和实现原理的著作。它将能指导读者更好地对Flink进行性能调优、可用性保障、效能优化和二次开发。

作者简介

作者罗江宇,Flink技术专家,先后就职于新浪微博、滴滴和某大型电商公司。先后主导或参与了多家公司的Flink实时计算服务的构建、对超大规模集群的维护以及Flink引擎的改造。拥有丰富的实时计算实战经验,目前专注于Kubernetes调度、Flink SQL及Flink流批一体化方向。

章节目录

版权信息

内容简介

作者简介

推荐语

前言

第1章 阅读Flink源代码前的准备

1.1 环境准备

1.2 获取、编译和调试Flink的源代码

1.2.1 获取与导入Flink源代码

1.2.2 编译与调试Flink源代码

1.3 Flink源代码的目录结构

1.4 Flink设计理念与基本架构

1.4.1 Flink与主流计算引擎对比

1.4.2 Flink基本架构

1.5 本章小结

第2章 编程模型与API

2.1 DataStream

2.2 算子

2.3 窗口

2.3.1 窗口的基本概念

2.3.2 窗口的执行流程

2.3.3 窗口分配器

2.3.4 触发器

2.3.5 窗口函数

2.4 本章小结

第3章 运行时组件与通信

3.1 运行时组件

3.1.1 REST

3.1.2 Dispatcher

3.1.3 ResourceManager

3.1.4 JobMaster

3.1.5 TaskExecutor

3.2 组件间通信

3.2.1 Akka与Actor模型

3.2.2 组件间通信实现

3.3 运行时组件的高可用

3.3.1 Master节点上组件的高可用

3.3.2 现有运行时组件高可用存在的问题及其解决方案

3.4 本章小结

第4章 状态管理与容错

4.1 状态

4.1.1 状态的原理与实现

4.1.2 状态生存时间的原理与实现

4.2 检查点

4.2.1 检查点机制原理

4.2.2 检查点执行过程

4.2.3 任务容错

4.3 状态后端

4.4 本章小结

第5章 任务提交与执行

5.1 任务提交整体流程

5.2 DAG转换

5.2.1 DAG的4层转换

5.2.2 WordCount转换过程

5.3 Slot分配

5.3.1 相关概念和实现类

5.3.2 Slot申请流程

5.3.3 任务部署

5.4 任务执行机制

5.4.1 任务执行过程

5.4.2 MailBox线程模型

5.5 本章小结

第6章 Flink网络栈

6.1 内存管理

6.2 网络传输

6.2.1 什么是Flink网络栈

6.2.2 非流控模型的网络传输流程

6.2.3 流控模型的网络传输流程

6.3 流批一体的shuffle架构

6.3.1 生命周期管理

6.3.2 数据shuffle

6.4 本章小结

第7章 Flink Connector的设计与实现

7.1 Kafka Connector实现原理

7.1.1 Kafka Source Connector实现

7.1.2 Kafka Sink Connector实现

7.2 HBase Table Connector实现原理

7.2.1 HBase Source Connector和Sink Connector的工厂实现

7.2.2 HBase维表实现

7.3 本章小结

第8章 部署模式

8.1 Local部署

8.2 Standalone部署

8.3 Flink on YARN模式

8.3.1 YARN基本架构

8.3.2 Flink on YARN模式介绍

8.3.3 Flink on YARN启动过程

8.4 Flinkon Kubernetes模式

8.5 本章小结

第9章 Flink Table与SQL

9.1 StreamTableEnvironment类介绍

9.1.1 StreamExecutionEnvironment类

9.1.2 EnvironmentSettings类

9.1.3 TableConfig类

9.1.4 StreamTableEnvironment的创建过程

9.2 SQL解析过程

9.2.1 SQL解析

9.2.2 SQL优化

9.2.3 RelNode转换

9.3 Table Connector

9.3.1 TableSource

9.3.2 TableSink

9.3.3 SPI机制在Table Connector中的应用

9.4 UDF与内置算子

9.4.1 UDF

9.4.2 内置算子

9.5 本章小结

第10章 Flink CEP原理解析

10.1 CEP的基本概念

10.1.1 什么是Flink CEP

10.1.2 Pattern

10.1.3 量词

10.1.4 条件

10.1.5 连接

10.1.6 Flink CEP作业编写举例

10.2 CEP内部实现原理

10.2.1 NFA简介

10.2.2 匹配过程

10.2.3 CEP状态存储

10.2.4 CEP和SQL结合

10.3 本章小结

第11章 Flink监控

11.1 监控指标

11.1.1 指标类型

11.1.2 系统指标及自定义指标

11.1.3 指标的使用

11.2 常用系统指标

11.3 监控体系建设

11.3.1 指标监控及展示

11.3.2 日志分析处理

11.3.3 定位手段

11.4 本章小结

Flink技术内幕:架构设计与实现原理是2022年由机械工业出版社华章分社出版,作者罗江宇。

得书感谢您对《Flink技术内幕:架构设计与实现原理》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
vBRAS原理、实现与部署 电子书
本书介绍了BRAS的技术背景和传统BRAS的基本原理,从而介绍vBRAS的基本原理和相关关键技术,包括SDN、NFV、云计算使能技术,软、硬件加速技术,以及主要的接口协议和开源控制器。探讨了vBRAS设备实现、主要应用场景以及vBRAS的组网技术和组网模式,最后列举了基于OpenBRAS开源社区的vBRAS开源情况。
区块链架构与实现:Cosmos详解 电子书
本书系统的阐述Cosmos的相关机制。
分布式缓存——原理、架构及Go语言实现 电子书
随着互联网的飞速发展,各行各业对互联网服务的要求也越来越高,互联网系统很多常见的存储类场景都面临着容量和稳定性风险。此时,本地缓存已无法满足需要,分布式缓存由于其高性能、高可用性等优点迅速被广大互联网公司接受并使用。。本书共分3个部分,每个部分都有3章。第1部分为基本功能的实现,主要介绍基于HTTP的inmemory缓存服务、HTTP/REST协议、TCP等。第2部分介绍性能相关的内容,我们将集中
操作系统原理与实现 电子书
操作系统是计算机系统的核心,是其他一切软件运行的基础。本书主要介绍操作系统的基本原理和实现方法。全书共12章,包括操作系统概论、进程管理、处理器管理、内存管理、I/O设备管理、磁盘和固态硬盘、文件系统、操作系统安全、分布式操作系统、虚拟机、鸿蒙操作系统、欧拉操作系统等内容。本书以鸿蒙和欧拉等具有代表性的国产操作系统为例,通过对操作系统知识的讲解,帮助学生系统掌握操作系统的基本概念、工作原理、主要功
分布式对象存储——原理、架构及Go语言实现 电子书
适读人群 :本书适合从事云存储方面工作的工程师或架构师,也适合想要学习和实现分布式对象存储的读者。   赠送价值249元的云存储专家视频课程   掌握云存储理论,动手搭建分布式对象存储架构   云存储已经是大家司空见惯的一种网络服务了,比如大家常用的百度云盘、美亚S3、微软的OneDrive、苹果公司的iCloud和谷歌的Google Cloud等。云存储背后的原理是怎样的,又是如何实现的呢?   本书完全从云存储的需求出发讲述对象存储的原理,并且带领读者使用Go语言编程,循序渐进、从无到有地建立起一个分布式对象存储的架构。也就是说,本书首先介绍为什么要这么做,然后解释怎么做。   本书适合云存储方面的研究者、工程师或架构师阅读,也可以供对云存储技术感兴趣的读者参考。在读完本书之后,你将较为深入地理解对象存储服务,甚至能够实现自己的对象存储服务。   本书包括以下内容:    对象存储简介;    分布式系统原理;    元数据以及元数据服务;    数据校验和去重;    数据冗余和即时修复;    断点续传;    数据压缩;    数据维护。