|
Java电子书:Flink设计与实现:核心原理与源码解析 格式 pdf 电子书 PDF 电子书 Java吧 java8.com
$ G4 [: I! n6 C4 h6 O q. ]' e. {0 \- c2 Y
8 w$ n) f2 f1 X) Q! {: f编号:mudaima-P0304【Java吧 java8.com】/ N$ ^1 D3 z1 n6 }- }% g/ v$ y/ y+ [ A
6 x2 Z7 O& ]6 z k
5 ~, B; g$ k8 b( |) m/ N
' \( d" b4 @7 i; L: Y/ I% J8 d' ~5 p/ ~+ ^Java电子书目录:第1章 Flink设计理念与基本架构 1- f: m6 ], ]' G; d
1.1 Flink基本设计思想 1
% k, _7 n; {# `1 X4 b$ U. `& b( \1.1.1 Stratosphere系统架构 17 ^ ?* a5 H$ I( N9 P. ^0 o
1.1.2 DataFlow模型的设计思想 3( A' J% m% d$ c) [5 @' b2 E( q
1.1.3 分布式异步快照算法 6
4 D0 [8 [- X* u$ m1.2 Flink整体架构 9
. ]$ R- j5 O4 k7 G3 x1.2.1 架构介绍 9
8 f' Z' n: G0 [1.2.2 Flink集群架构 114 V e9 a' x& F* r& |5 n* H0 R
1.2.3 核心概念 12# t; E* c) Q: B- T$ y; w T
1.3 Flink源码分析与编译 14, U2 U" c# b" t: `
1.3.1 源码编译 149 e( t* m$ w9 Y9 H! v& }
1.3.2 源码调试环境搭建 159 R6 j; E" h& h; M4 A! X1 x
1.4 本章小结 19
$ H; ]- t, N+ B O% P, L第2章 DataStream的设计与实现 20
0 ^6 ]7 i, a, V5 z/ }+ x$ T* s2.1 DataStream API的主要组成 20
( J1 N0 z, X4 S& D2.1.1 DataStream API应用实例 20
% j$ H7 d* {4 d6 h( ~2.1.2 Transformation详解 23" u; C/ Z7 Y. B0 L- X0 R2 `; _2 z
2.2 StreamOperator的定义与实现 25
' K! |& z1 J1 P8 ?7 a: |! a/ |! Z- |2.2.1 StreamOperator接口实现 26) [( M, |0 g2 F% ?2 L: z
2.2.2 OneInputStreamOperator与TwoInputStreamOperator 314 z. E5 k) D4 Q
2.2.3 StreamOperatorFactory详解 33
, [. H$ a6 T ]4 P2.3 Function的定义与实现 35
4 X: W1 _' V( Z7 N- r2.3.1 RichFunction详解 367 @' r4 c- k& c7 F( @1 z9 ?
2.3.2 SourceFunction与SinkFunction 38; Q# |2 c3 W9 A, [
2.3.3 ProcessFunction的定义与实现 44% ^8 D9 v. e# g/ P
2.4 TimerService的设计与实现 47. }7 N; T4 Z- W- M) b
2.4.1 时间概念与Watermark 47, H- c2 c( w" d3 w. u6 c3 v5 G, t
2.4.2 TimerService时间服务 53. J8 q, v& [8 b$ @
2.5 DataStream核心转换 59
?8 b! e8 ^1 c% l7 P2 R" X2.5.1 KeyedStream与物理分区 59& P1 d, w1 K/ D! [
2.5.2 WindowedStream的设计与实现 62: ~5 r. |9 ]" V6 v* |0 v" u
2.6 本章小结 68
$ S% y% Y, Z2 Z第3章 运行时的核心原理与实现 69( z0 t- x# S3 x% G! j- K+ m0 e
3.1 运行时的整体架构 69( w1 o: Q! y8 c" v
3.1.1 运行时整体架构概览 69
6 E* a7 I) B8 M- w# u3.1.2 集群的启动与初始化 729 p4 P+ y% v& H8 s0 y
3.2 运行时组件的创建和启动 79
/ a; V" Q( X. v( {" E0 ~3.2.1 集群组件的创建和启动 793 p% s. X; h" \) b; z ~ x
3.2.2 WebMonitorEndpoint的创建与初始化 85
' g" P$ ]$ n; E0 Z" e3 c- i3.2.3 Dispatcher的创建与初始化 91* l- {$ R/ X1 I1 N* ^% H( f. @
3.2.4 ResourceManager的创建与初始化 98
8 Y9 T) t6 U& j3.2.5 TaskManager的创建与启动 106
7 P! D, I- x* v- B$ G3 U3.3 集群资源管理 115* G/ r8 k4 [5 o% |) P+ P' S" d
3.3.1 ResourceManager详解 116
2 |5 i$ l' d8 [$ k3.3.2 ResourceManagerGateway接口实现 118! x7 X" m& h% [- E
3.3.3 Slot计算资源管理 119 z B }: g) ]: o
3.4 系统高可用与容错 130
- f4 f$ n, i& `3.4.1 HighAvailabilityServices的设计与实现 130
) U/ O0 w3 I1 S3.4.2 基于ZooKeeper实现高可用 1352 ?7 i9 b( o$ |" c/ p9 a
3.4.3 JobGraphStore的设计与实现 1418 t2 Y* m) H! s2 W) K* K9 I4 q
3.5 本章小结 144
& h1 x' }* I) ]( c' @第4章 任务提交与执行 1457 F/ P" ?$ ~1 K' J
4.1 客户端作业提交 1454 d# T& ]9 z4 I0 A b. n) K( Y
4.1.1 命令行提交 145
2 A7 a4 ?( ~, X8 p5 o4.1.2 创建和初始化CLIFrontend 148
$ ]! }! o5 P3 {' y4.1.3 PackagedProgram构造 150: E6 J* a1 P1 [( o- \
4.2 ExecutionEnvironment初始化 152 s+ H5 N- S9 d4 u! P
4.2.1 ExecutionEnvironment类型 152" h/ N3 o+ J7 I# \, p
4.2.2 StreamExecutionEnvironment详解 154, ^/ a, c b$ b
4.3 将Pipeline转换成JobGraph 1610 [+ y) j# V9 F4 `; X9 @' M
4.3.1 用Transformation生成StreamGraph 162
, c3 ^; {8 L+ w# V( v; e: ?4.3.2 将StreamGraph转换为JobGraph 169; i- o' T% B/ }/ M9 o6 }1 L: q
4.3.3 将JobGraph提交到集群运行时 176- W0 v6 b6 i: C; G L5 d
4.4 JobGraph的接收与运行 178+ Z( G+ a H5 P, S& w( A- c
4.4.1 JobGraph提交整体流程 178" Z; Y3 n0 P( L1 R# W0 a
4.4.2 Dispatcher任务与分发 180- {, B4 |9 |: R0 D* m+ @
4.4.3 JobManager启动与初始化 184
8 U0 F" p$ a6 Z g3 b& E4.4.4 JobMaster详解 188
: c) f& n' N. p% @4.5 ExecutionGraph的调度与执行 195! T% q8 L( Z& \/ i& }9 F
4.5.1 ExecutionGraph生成 198
' _9 \5 J" k$ v4.5.2 SchedulerNG调度器 200
9 m f7 s. c7 b; I3 W( b$ ~4.6 Task的执行与注销 206
% q! g" M8 O0 [5 o: [5 }4.6.1 Task的启动与注销 208
; V! u' O! [$ O4 Q1 c: B& k" e# }3 }4.6.2 AbstractInvokable的加载与初始化 211; _, U# Z% z" o
4.6.3 StreamTask详解 212# c4 \. `5 u5 Q$ p
4.6.4 StreamTask线程模型 216
- S) l, I0 S* b% q" @" b9 {) u1 c4.6.5 Task重启与容错策略 223
4 C K; g6 Y0 D) p% {% g4.7 本章小结 234
" f9 ^& ] f2 ?4 j* \第5章 集群部署模式 2356 Z* C. H2 J8 b5 g! h0 \
5.1 基本概念 235; r. f0 `% b5 P4 j/ u
5.1.1 ClusterClient的创建与获取 235
% \# o4 j7 s m3 o5.1.2 ClusterEntrypoint集群启动类 241" ]8 n8 G# M& @2 M4 g
5.2 Flink On Yarn的设计与实现 245: x5 {& t$ q7 y0 t+ R
5.2.1 Yarn架构的设计与实现 245
, j( _0 a, e$ g8 Y& j5.2.2 Session集群的部署与启动 2470 H+ C7 z+ n) c1 J) E* T! r: ~$ ?
5.2.3 YarnResourceManager详解 253
" G$ f4 B! }. a5.3 Flink On Kubernetes的设计与实现 2580 @, G7 g2 g- i! e1 O! Y4 G) l
5.3.1 Flink On Kubernetes架构 259+ X0 _# w1 b% s$ m
5.3.2 Session集群的部署与启动 261
) X' y, a9 e: A3 \% X% D: X/ b" d5.3.3 KubernetesResourceManager详解 268
0 J, w2 w% \! G) \5.4 本章小结 274
5 v# c6 N$ }8 T0 V+ S' L9 f6 _第6章 状态管理与容错 275
3 [! o3 T5 i" T" J: F6.1 状态数据管理 275' z- m7 j. E% r9 r
6.1.1 状态数据类型 275
* y0 R- N8 J5 o& ]2 L h6.1.2 状态初始化流程 279& A$ t" C, m+ p8 n0 l7 P
6.2 KeyedState的创建与管理 2856 A& ]) }* e4 s- o( ]
6.2.1 KeyedStateBackend的整体设计 2859 U1 Y( y) T6 n8 b5 R6 M) H
6.2.2 HeapKeyedStateBackend的实现 286
8 }) {1 F" ?& R: U+ s" w6 ?6.3 OperatorState的创建与管理 295, w* C5 Q0 V: S) n
6.3.1 OperatorStateBackend的整体设计 295
( a" V0 X9 i' T; w- R+ |5 Q6.3.2 基于DefaultOperatorState-Backend创建OperatorState 296
- T! {! n! }2 U8 r- D0 x6.4 StateBackend详解 2992 t4 u% j; B7 F' D% z1 A v
6.4.1 StateBackend的整体设计 2996 Q* H$ B. N8 o" M
6.4.2 MemoryStateBackend的实现 303) {+ w" r( I4 p9 q- M
6.5 Checkpoint的设计与实现 308. z, U4 A. Q4 T/ Q3 T' Y2 ^) t
6.5.1 Checkpoint的实现原理 308
) g3 @, L6 o- W6.5.2 Checkpoint的触发过程 315
+ n: {# ^0 j% h I$ [6.6 本章小结 341( {8 h9 ^7 G0 Q1 J+ f `4 ^
第7章 网络通信 342
% A, h( X" W9 P1 j( o* I7.1 集群RPC通信机制 3426 O& I3 s0 ]/ l0 \7 P8 Q
7.1.1 Flink RPC框架的整体设计 342- W6 I9 _# `% k; [( F# p$ p( A
7.1.2 AkkaRpcService详解 347" \# `& B. ^ Y* }
7.1.3 Rp & B8 r: u; S r: U1 v
; e1 H$ L# f6 w0 y3 J/ q8 g6 W% Y' o: r
百度云盘下载地址(完全免费-绝无套路):0 B7 A( B% T6 _9 d3 Y( c- u
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|