|
Java电子书:Flink设计与实现:核心原理与源码解析 格式 pdf 电子书 PDF 电子书 Java吧 java8.com6 d$ b: N( d0 w: d* I0 ]+ K
$ ^9 s8 Q0 \7 h7 B
. b! v- k: c$ r6 F
编号:mudaima-P0304【Java吧 java8.com】
; ?$ J* A1 Q5 E
6 Y6 e9 S2 q4 N9 { F* d9 B
4 ~ I9 ^( j2 t0 ?9 c
. V2 U! @& A9 j+ s& PJava电子书目录:第1章 Flink设计理念与基本架构 1 {4 D. W( ~9 c, O* w/ `
1.1 Flink基本设计思想 1( o" ?- F' i; |/ i, M% y$ n0 m
1.1.1 Stratosphere系统架构 18 Q% r B L' q* @$ m& x
1.1.2 DataFlow模型的设计思想 3" Z/ _( y, v e* ~1 V9 S4 V. J
1.1.3 分布式异步快照算法 6
$ C, u/ y- ?9 b* W2 m9 E0 e1.2 Flink整体架构 93 }" `, C& f% D; ]. N8 y* g0 A
1.2.1 架构介绍 96 \2 p n! G6 l3 m& S: c1 y
1.2.2 Flink集群架构 11
0 y/ q; }# J+ S' E. N( n3 K/ \) k1.2.3 核心概念 12
9 i! |+ h, [, N+ ^: g1.3 Flink源码分析与编译 14" f2 h' `/ E+ ]
1.3.1 源码编译 14
- Y: p, R5 ]* e" F3 E3 V1 Q1.3.2 源码调试环境搭建 15
w; |7 L, L u5 _1.4 本章小结 19+ u. i/ r% w, ?6 Y
第2章 DataStream的设计与实现 204 {1 b' Q$ J% q) V0 n- T
2.1 DataStream API的主要组成 20
; X; R' u3 P* j' R5 t/ |* G% H" _2.1.1 DataStream API应用实例 20
1 q9 x1 i# _# h9 {7 @- i7 Z. k2.1.2 Transformation详解 23
3 V: l" k) Y0 W& j2.2 StreamOperator的定义与实现 25/ G' E$ P- ^% _' G
2.2.1 StreamOperator接口实现 261 F! d: N! C8 W6 P* N) W
2.2.2 OneInputStreamOperator与TwoInputStreamOperator 313 t8 K0 c* h i/ h) r+ k
2.2.3 StreamOperatorFactory详解 33' w4 l1 ?6 k, }5 Q* O2 Y- p
2.3 Function的定义与实现 355 U& s4 U$ A: W6 \& C. Z- s
2.3.1 RichFunction详解 36
- W' j3 ]' Z9 r7 _% u2.3.2 SourceFunction与SinkFunction 38
1 i9 [. N1 Y: O+ ^# g2.3.3 ProcessFunction的定义与实现 44# D& A/ m* N& c* ?$ ~
2.4 TimerService的设计与实现 47
. J% L7 X+ j8 t7 ~3 z& f2.4.1 时间概念与Watermark 47
( e) ^* U0 ?- s' z4 ?/ ]2.4.2 TimerService时间服务 53
. m0 t4 n* L# e+ ^8 Z# H2.5 DataStream核心转换 59* N8 I" J" {0 b3 ]& d& g; J9 }: K
2.5.1 KeyedStream与物理分区 59- }5 A! l+ U* [' C3 k& S8 c
2.5.2 WindowedStream的设计与实现 62* s2 ^1 ]( c+ g) I" m/ x3 {) \# R
2.6 本章小结 68
- Q4 P* \! ^+ Z2 m第3章 运行时的核心原理与实现 69
6 i5 f6 f1 \7 q5 u/ c% _& h3.1 运行时的整体架构 69
$ n8 y/ h0 S3 D& D3.1.1 运行时整体架构概览 69, F6 X% b% `7 h9 Z
3.1.2 集群的启动与初始化 72
$ p, K" D" M" L: X3.2 运行时组件的创建和启动 79
+ z( m4 r" l4 C: }3.2.1 集群组件的创建和启动 790 A0 a& Y9 x7 L8 d" k
3.2.2 WebMonitorEndpoint的创建与初始化 85
9 t2 i0 F5 O4 M; S+ l3.2.3 Dispatcher的创建与初始化 91% S$ l1 m* p5 F/ A
3.2.4 ResourceManager的创建与初始化 987 {* P4 a& Z7 y* D% B
3.2.5 TaskManager的创建与启动 106
0 `' r* e# \# x0 }# T7 w' ~! o3.3 集群资源管理 115
1 A% w; j' `3 J5 D$ [3.3.1 ResourceManager详解 116
* F" X/ x# O; N- s# W4 i' |3.3.2 ResourceManagerGateway接口实现 118
9 L6 r5 Y$ ]$ V" l3.3.3 Slot计算资源管理 119
8 y$ k! L9 x% \$ L' {. [( u3.4 系统高可用与容错 130
7 I7 W; }$ l$ K: \3.4.1 HighAvailabilityServices的设计与实现 130$ w! q" l% {0 a2 _( V* ]( }0 Y7 @
3.4.2 基于ZooKeeper实现高可用 135( H$ o4 g' {+ ]
3.4.3 JobGraphStore的设计与实现 141
1 w0 i# Z1 P0 K# Q# F% Z3.5 本章小结 144" n, F* T6 q2 @5 f# h0 k
第4章 任务提交与执行 145
0 O2 f' R3 m: \- ]( v' R K4.1 客户端作业提交 1450 B6 k. b( i4 D3 o* h# h3 m- A
4.1.1 命令行提交 145
9 C3 b# b/ \2 o" d- K) G4.1.2 创建和初始化CLIFrontend 148+ H7 |$ u: g) R/ x
4.1.3 PackagedProgram构造 150" E3 f6 J2 g8 a9 W) J
4.2 ExecutionEnvironment初始化 152
1 C r2 J6 E- r, R' O" R/ R! B; t4.2.1 ExecutionEnvironment类型 152
3 B6 \9 K1 |. a/ l4.2.2 StreamExecutionEnvironment详解 154
& [; S) R0 H! P9 |/ D& H4 m8 { o4.3 将Pipeline转换成JobGraph 161, H3 B! q/ f! C$ _2 f @
4.3.1 用Transformation生成StreamGraph 162
' R: s& o3 h* @+ ]& t" ~4.3.2 将StreamGraph转换为JobGraph 169
$ _0 V: _0 E; g8 ]- s, c' o, T4.3.3 将JobGraph提交到集群运行时 176/ A% Y, M6 f$ V! J
4.4 JobGraph的接收与运行 178
: m+ [- f/ ^* q5 g# G4.4.1 JobGraph提交整体流程 178
2 m5 z3 E* q8 e6 X. N m4.4.2 Dispatcher任务与分发 180) o" F* T9 }5 _% ]4 Z* ^
4.4.3 JobManager启动与初始化 1849 S( p8 E9 O: @- Y
4.4.4 JobMaster详解 188
' V) i1 `3 L/ q; O" n: J4.5 ExecutionGraph的调度与执行 195
]& C6 ~8 t' U' N4.5.1 ExecutionGraph生成 198
3 {' P" o, e& _$ R- a9 E4.5.2 SchedulerNG调度器 200
6 N/ |" [# g1 Z+ ]9 l1 [" ^: g7 u4.6 Task的执行与注销 2065 Z( ]( w& [( v: r ~
4.6.1 Task的启动与注销 208
- z! o4 S& I$ E T5 u4.6.2 AbstractInvokable的加载与初始化 2111 ?: H6 u* T( x z, }) a% H
4.6.3 StreamTask详解 212
& H5 ~: w! k6 m4.6.4 StreamTask线程模型 216+ `, u0 y5 `3 u9 \0 R" ]9 S' X% T( [0 M
4.6.5 Task重启与容错策略 223
% j5 i& V4 B& e0 C4.7 本章小结 234( r7 R$ F! I- Y
第5章 集群部署模式 235
* @' O( S% H* u2 {5.1 基本概念 235
- n) A" m; V8 p2 \$ z5.1.1 ClusterClient的创建与获取 235
! y& P5 X9 j5 M5.1.2 ClusterEntrypoint集群启动类 2412 W- K% o1 J6 t8 }' U# C
5.2 Flink On Yarn的设计与实现 245
! d' k. L; w) E: m6 e8 Z2 J5.2.1 Yarn架构的设计与实现 245
8 y4 r8 Y9 ~4 M: i& U- a5.2.2 Session集群的部署与启动 2473 d1 b/ @/ S+ w! p: Z5 A' V- Q
5.2.3 YarnResourceManager详解 253/ q, U2 r2 c! p# c8 I
5.3 Flink On Kubernetes的设计与实现 258
/ M& E9 {7 q" Z! m0 o# ]5.3.1 Flink On Kubernetes架构 259
8 ~5 w8 P6 _5 t8 n8 j/ E$ O5.3.2 Session集群的部署与启动 261
^3 y5 ]5 b8 }: C" G3 Z# M/ C5.3.3 KubernetesResourceManager详解 268
& F( Y! I: e( D0 c' C' o5.4 本章小结 2740 d7 n H* L3 T, h" m4 M
第6章 状态管理与容错 275
0 Z, ` ?# K3 p8 `- u6.1 状态数据管理 275# @, Y# A! @- @0 C0 a) x3 B9 V
6.1.1 状态数据类型 275
: S2 C# N0 {' u6.1.2 状态初始化流程 279) c3 p( N9 J- e5 b
6.2 KeyedState的创建与管理 2851 x/ ?: q& _; Y" {/ E
6.2.1 KeyedStateBackend的整体设计 285
* F) u! m( G8 E3 Q m6.2.2 HeapKeyedStateBackend的实现 286# \2 q. ], v2 d$ O3 I1 ~2 O6 {
6.3 OperatorState的创建与管理 295- u% G Y1 P% I( h8 j9 c9 ^
6.3.1 OperatorStateBackend的整体设计 295- G: K' t$ u& @ E* C2 B3 c: \' z7 A
6.3.2 基于DefaultOperatorState-Backend创建OperatorState 296
+ {2 D& h% n& e: F6 Y6.4 StateBackend详解 299
5 ~- o A, X- b" S; H6.4.1 StateBackend的整体设计 299( |* g3 |6 H A1 y2 s; J6 v
6.4.2 MemoryStateBackend的实现 303
, c3 f1 i, H! y6 i" z6.5 Checkpoint的设计与实现 308
, f8 }; P" g5 M! H6.5.1 Checkpoint的实现原理 3088 P4 C9 x4 W& T u8 j
6.5.2 Checkpoint的触发过程 3158 E& b' f1 @( {
6.6 本章小结 341
1 v7 L2 D4 X8 f" N7 A第7章 网络通信 342
* v2 j( S, I% }- z6 v& Y( w6 [7.1 集群RPC通信机制 342* t0 D) w7 d# U. { \" P
7.1.1 Flink RPC框架的整体设计 342
" x& s1 Y; ~2 l: \( i" h7.1.2 AkkaRpcService详解 3477 f% q" o5 v# J* r# [/ m
7.1.3 Rp
1 u- m8 \- e( L% o9 {+ A& f n1 c
/ r; ~5 S }3 r0 e百度云盘下载地址(完全免费-绝无套路):, Q4 j" I: v* {- `3 q
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|