科技
类型
可以朗读
语音朗读
664千字
字数
2021-07-01
发行日期
展开全部
主编推荐语
这是一本从源代码角度剖析Flink设计思想、架构原理以及各功能模块的底层实现原理的著作。
内容简介
全书共8章:
第1章介绍Flink设计理念与基本架构;
第2章介绍DataStream的设计与实现;
第3章介绍运行时的核心原理与实现,包括Dispatcher、ResourceManager以及JobManager等核心组件的源码级解析和介绍;
第4章介绍Flink任务提交与执行的整体流程,包括客户端实现、运行时作业执行过程、JobGraph及ExecutionGraph图转换等;
第5章介绍不同的集群部署模式,包括On Yarn、On Kubernetes等;
第6章介绍状态管理与容错,包括不同类型状态后端的设计与实现;
第7章介绍Flink网络通信,包括RPC通信以及基于Netty实现的网络栈;
第8章介绍Flink内存管理,包括MemorySegment的设计与实现等。
目录
- 版权信息
- 前言
- 为什么要写本书
- 读者对象
- 如何阅读本书
- 勘误和支持
- 致谢
- 第1章 Flink设计理念与基本架构
- 1.1 Flink基本设计思想
- 1.1.1 Stratosphere系统架构
- 1.1.2 DataFlow模型的设计思想
- 1.1.3 分布式异步快照算法
- 1.2 Flink整体架构
- 1.2.1 架构介绍
- 1.2.2 Flink集群架构
- 1.2.3 核心概念
- 1.3 Flink源码分析与编译
- 1.3.1 源码编译
- 1.3.2 源码调试环境搭建
- 1.4 本章小结
- 第2章 DataStream的设计与实现
- 2.1 DataStream API的主要组成
- 2.1.1 DataStream API应用实例
- 2.1.2 Transformation详解
- 2.2 StreamOperator的定义与实现
- 2.2.1 StreamOperator接口实现
- 2.2.2 OneInputStreamOperator与TwoInputStreamOperator
- 2.2.3 StreamOperatorFactory详解
- 2.3 Function的定义与实现
- 2.3.1 RichFunction详解
- 2.3.2 SourceFunction与SinkFunction
- 2.3.3 ProcessFunction的定义与实现
- 2.4 TimerService的设计与实现
- 2.4.1 时间概念与Watermark
- 2.4.2 TimerService时间服务
- 2.5 DataStream核心转换
- 2.5.1 KeyedStream与物理分区
- 2.5.2 WindowedStream的设计与实现
- 2.6 本章小结
- 第3章 运行时的核心原理与实现
- 3.1 运行时的整体架构
- 3.1.1 运行时整体架构概览
- 3.1.2 集群的启动与初始化
- 3.2 运行时组件的创建和启动
- 3.2.1 集群组件的创建和启动
- 3.2.2 WebMonitorEndpoint的创建与初始化
- 3.2.3 Dispatcher的创建与初始化
- 3.2.4 ResourceManager的创建与初始化
- 3.2.5 TaskManager的创建与启动
- 3.3 集群资源管理
- 3.3.1 ResourceManager详解
- 3.3.2 ResourceManagerGateway接口实现
- 3.3.3 Slot计算资源管理
- 3.4 系统高可用与容错
- 3.4.1 HighAvailabilityServices的设计与实现
- 3.4.2 基于ZooKeeper实现高可用
- 3.4.3 JobGraphStore的设计与实现
- 3.5 本章小结
- 第4章 任务提交与执行
- 4.1 客户端作业提交
- 4.1.1 命令行提交
- 4.1.2 创建和初始化CLIFrontend
- 4.1.3 PackagedProgram构造
- 4.2 ExecutionEnvironment初始化
- 4.2.1 ExecutionEnvironment类型
- 4.2.2 StreamExecutionEnvironment详解
- 4.3 将Pipeline转换成JobGraph
- 4.3.1 用Transformation生成StreamGraph
- 4.3.2 将StreamGraph转换为JobGraph
- 4.3.3 将JobGraph提交到集群运行时
- 4.4 JobGraph的接收与运行
- 4.4.1 JobGraph提交整体流程
- 4.4.2 Dispatcher任务与分发
- 4.4.3 JobManager启动与初始化
- 4.4.4 JobMaster详解
- 4.5 ExecutionGraph的调度与执行
- 4.5.1 ExecutionGraph生成
- 4.5.2 SchedulerNG调度器
- 4.6 Task的执行与注销
- 4.6.1 Task的启动与注销
- 4.6.2 AbstractInvokable的加载与初始化
- 4.6.3 StreamTask详解
- 4.6.4 StreamTask线程模型
- 4.6.5 Task重启与容错策略
- 4.7 本章小结
- 第5章 集群部署模式
- 5.1 基本概念
- 5.1.1 ClusterClient的创建与获取
- 5.1.2 ClusterEntrypoint集群启动类
- 5.2 Flink On Yarn的设计与实现
- 5.2.1 Yarn架构的设计与实现
- 5.2.2 Session集群的部署与启动
- 5.2.3 YarnResourceManager详解
- 5.3 Flink On Kubernetes的设计与实现
- 5.3.1 Flink On Kubernetes架构
- 5.3.2 Session集群的部署与启动
- 5.3.3 KubernetesResourceManager详解
- 5.4 本章小结
- 第6章 状态管理与容错
- 6.1 状态数据管理
- 6.1.1 状态数据类型
- 6.1.2 状态初始化流程
- 6.2 KeyedState的创建与管理
- 6.2.1 KeyedStateBackend的整体设计
- 6.2.2 HeapKeyedStateBackend的实现
- 6.3 OperatorState的创建与管理
- 6.3.1 OperatorStateBackend的整体设计
- 6.3.2 基于DefaultOperatorStateBackend创建OperatorState
- 6.4 StateBackend详解
- 6.4.1 StateBackend的整体设计
- 6.4.2 MemoryStateBackend的实现
- 6.5 Checkpoint的设计与实现
- 6.5.1 Checkpoint的实现原理
- 6.5.2 Checkpoint的触发过程
- 6.6 本章小结
- 第7章 网络通信
- 7.1 集群RPC通信机制
- 7.1.1 Flink RPC框架的整体设计
- 7.1.2 AkkaRpcService详解
- 7.1.3 RpcServer动态代理实现
- 7.1.4 AkkaRpcActor的设计与实现
- 7.1.5 集群组件之间的RPC通信
- 7.2 NetworkStack的设计与实现
- 7.2.1 NetworkStack概览
- 7.2.2 StreamTask数据流
- 7.2.3 RecordWriter详解
- 7.2.4 ShuffleMaster与ShuffleEnvironment
- 7.2.5 ResultPartition与InputGate详解
- 7.2.6 ConnectManager的设计与实现
- 7.2.7 NetworkBuffer资源管理
- 7.3 基于信用值的反压机制实现
- 7.3.1 反压机制理论基础
- 7.3.2 基于信用值的反压机制详解
- 7.4 本章小结
- 第8章 内存管理
- 8.1 内存管理概述
- 8.1.1 积极的内存管理
- 8.1.2 Flink内存模型
- 8.2 MemorySegment的设计与实现
- 8.2.1 MemorySegment架构概览
- 8.2.2 MemorySegment详解
- 8.2.3 MemorySegment内存使用
- 8.3 DataInputView与DataOutputView
- 8.3.1 DataInputDeserializer和DataOutputSerializer
- 8.3.2 DataInputViewStreamWrapper与DataOutputViewStreamWrapper
- 8.3.3 AbstractPagedInputView与AbstractPagedOutputView
- 8.4 数据序列化与反序列化
- 8.4.1 TypeInformation类型系统
- 8.4.2 RecordSerializer与Recorddeserializer
- 8.5 本章小结
展开全部
出版方
机械工业出版社有限公司
机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。