来源书籍

Flink原理与实践

框架类

工程实践(高信息浓度 + 低到中等稳定性)

类别清单覆盖

8/8

已覆盖 8 补充生成 0 未覆盖 0

全书概览

《Flink原理与实践》读书笔记总览

阶段一:整体评级

  • 书名:《Flink原理与实践》
  • 作者:鲁蔚征
  • 出版时间:2021-03
  • Skill 版本:v1
  • 类别:框架类
  • 四象限结论:工程实践(高信息浓度 + 低到中等稳定性)
评级理由

本书不是单纯的 API 清单,而是围绕 Flink 作为流处理框架的核心机制展开:第1章解释批处理、流处理、Lambda/Kappa 架构和流处理基础概念;第3章讲数据流图、作业提交、JobManager/TaskManager、算子链与 Slot;第5、6章集中讨论时间语义、Watermark、窗口、状态、Checkpoint 与 Savepoint;第7章延伸到端到端 Exactly-Once 和连接器;第8章用动态表和持续查询解释 Flink SQL。这些内容体现了较高的信息浓度。

但书中也有大量与 Flink 当时版本及具体 API 绑定的内容,例如 Flink 1.11 前后 Source 接口差异、DataStream API/SQL DDL 写法、部署配置、命令行、内存参数和实验步骤。核心原理可迁移,具体接口与配置会随 Flink 版本演进。因此整体归为“工程实践”,而非稳定性最高的“经典原理”。

阶段二:章节进度

章节号 章节标题 精读/略读 状态 卡片数
1 大数据技术概述 精读 done 8
2 大数据必备编程知识 精读 done 6
3 Flink的设计与运行原理 精读 done 8
4 DataStream API的介绍和使用 精读 done 8
5 时间和窗口 精读 done 10
6 状态和检查点 精读 done 10
7 Flink连接器 精读 done 6
8 Table API & SQL的介绍和使用 精读 done 10
9 Flink的部署和配置 精读 done 6
章节划分理由

第1章包含大数据分治、批处理/流处理、Lambda/Kappa、窗口/状态/一致性等基础概念,精读。第2章虽有开发环境搭建,但继承、多态、泛型、函数式编程与 Flink API 理解直接相关,精读并过滤操作步骤。第3章是框架运行原理主线,精读。第4章包含 DataStream 的核心抽象、转换、并行度、重分布、序列化和自定义函数,精读。第5章集中讲时间、Watermark、窗口、Join 和迟到数据,精读。第6章讲状态、Checkpoint、Savepoint 与恢复机制,精读。第7章讲连接器和端到端一致性,精读。第8章讲 Table API、动态表、持续查询、时间属性和 SQL Join,精读。第9章部署命令较多,但类加载、资源划分、内存、算子链与槽位共享仍属框架机制,精读并过滤纯操作步骤。

待关联术语

术语名 出现章节 一句话语境
MPI 1 作为分治与并行计算背景被提及,但未展开其编程模型细节
Storm 1 作为第一代流处理引擎与 Flink 对比,未系统展开内部机制
Samza 1 作为第二代流处理引擎被提及,未展开架构细节
Avro 4 作为 Flink 可使用的序列化/数据格式被提及
Kryo 4 作为 Java 生态常用序列化框架被提及
Thrift 4 作为跨语言序列化方案被提及
Protobuf 4 作为跨语言序列化方案被提及
RocksDB 6 作为状态后端相关实现被提及,未展开存储引擎原理
Kinesis 7 作为 Flink 支持的连接器对象被列举
Redis 7 作为 Flink 支持的连接器对象被列举

引用文献

标题 类型 出现章节 一句话语境
大数据时代:生活、工作与思维的大变革 1 用于引入大数据改变生活、工作和思维的背景
MapReduce: Simplified Data Processing on Large Clusters 论文 1 作为 Hadoop/MapReduce 分布式批处理模型的经典来源
Kafka: a Distributed Messaging System for Log Processing 论文 1 作为 Kafka 日志式消息系统的参考来源
The Dataflow Model 论文 5 作为时间、窗口、水位线等流处理模型的重要参考
Lightweight Asynchronous Snapshots for Distributed Dataflows 论文 6 作为 Flink 分布式异步快照机制的参考来源
Apache Flink 框架 全书 本书主题框架,围绕其 API、运行时、状态和部署展开
Apache Kafka 框架 1、7 作为流数据来源、消息队列和 Exactly-Once Sink 示例被多次提及

实践卡进度

序号 实践标题 实践方式 状态 关联章节 产出
1 实现两阶段提交sink观察事务写延后可见 实现深读 done 第7章 Checkpoint 周期可见性时间线与故障注入记录
2 写一个时态表Join作业验证查版本与状态TTL 真实任务 done 第8章 事实-维度版本关联对照表与状态大小观察记录

类别清单核对

维度 覆盖状态 关联卡片标题或未覆盖理由
核心抽象/设计理念 已覆盖 [[流图是逻辑契约]]、[[物理图承接分布式]]、[[SQL是更高抽象]]、[[动态表持续变化]]
扩展机制 已覆盖 [[Rich函数有生命周期]]、[[连接器是系统边界]]、[[新版Source拆职责]]、[[环境桥接两套API]]
生命周期管理 已覆盖 [[提交流程分层协作]]、[[Checkpoint备份本地状态]]、[[Barrier切分快照边界]]、[[Savepoint服务运维]]
配置与约定的取舍 已覆盖 [[算子链是部署优化]]、[[槽位共享提升利用率]]、[[并行度决定最低Slot]]、[[内存配置分角色]]
依赖管理/组件协作方式 已覆盖 [[JobManager负责协调]]、[[TaskManager执行任务]]、[[Slot是资源单位]]、[[端到端一致靠两端]]
与底层技术的关系 已覆盖 [[类加载保护依赖边界]]、[[SQL是更高抽象]]、[[环境桥接两套API]]、[[两阶段提交有协作成本]]
性能特性与常见陷阱 已覆盖 [[延迟吞吐是跷跷板]]、[[延迟准确需权衡]]、[[窗口函数分增全量]]、[[增量快照省写入]]
适用边界 已覆盖 [[流批区别在边界]]、[[Lambda双链路代价]]、[[Kappa以流代批]]、[[流SQL受状态约束]]、[[传统Join状态最重]]

章节与卡片

01 大数据技术概述

  1. 大数据五维 普通读书笔记卡
  2. 分治是底层思想 普通读书笔记卡
  3. 流批区别在边界 普通读书笔记卡
  4. 优秀流框架门槛 普通读书笔记卡
  5. Lambda双链路代价 普通读书笔记卡
  6. Kappa以流代批 普通读书笔记卡
  7. 延迟吞吐是跷跷板 普通读书笔记卡
  8. 状态支撑连续计算 普通读书笔记卡

02 大数据必备编程知识

  1. 多态降低耦合 普通读书笔记卡
  2. 接口定义能力边界 普通读书笔记卡
  3. 重写重载别混淆 普通读书笔记卡
  4. 泛型把类型参数化 普通读书笔记卡
  5. 函数式强调行为值 普通读书笔记卡
  6. 函数式接口承载Lambda 普通读书笔记卡

03 Flink的设计与运行原理

  1. 流图是逻辑契约 普通读书笔记卡
  2. 物理图承接分布式 普通读书笔记卡
  3. 交换策略决定成本 普通读书笔记卡
  4. 提交流程分层协作 普通读书笔记卡
  5. JobManager负责协调 普通读书笔记卡
  6. TaskManager执行任务 普通读书笔记卡
  7. 算子链减少交换 普通读书笔记卡
  8. Slot是资源单位 普通读书笔记卡

04 DataStream API的介绍和使用

  1. 程序骨架五步 普通读书笔记卡
  2. 转换改变流形态 普通读书笔记卡
  3. KeyBy定义聚合归属 普通读书笔记卡
  4. Reduce保留同型聚合 普通读书笔记卡
  5. Union与Connect分工 普通读书笔记卡
  6. 并行度塑造物理执行 普通读书笔记卡
  7. TypeInformation补类型 普通读书笔记卡
  8. Rich函数有生命周期 普通读书笔记卡

05 时间和窗口

  1. 三种时间语义 普通读书笔记卡
  2. Watermark推进事件时钟 普通读书笔记卡
  3. 水位线取慢者 普通读书笔记卡
  4. 延迟准确需权衡 普通读书笔记卡
  5. ProcessFunction贴近底层 普通读书笔记卡
  6. Timer是时间回调 普通读书笔记卡
  7. 侧输出分流异常 普通读书笔记卡
  8. 窗口给无界流切片 普通读书笔记卡
  9. 窗口函数分增全量 普通读书笔记卡
  10. 迟到数据需旁路 普通读书笔记卡

06 状态和检查点

  1. 状态保存业务记忆 普通读书笔记卡
  2. 托管状态可恢复 普通读书笔记卡
  3. Keyed与Operator状态 普通读书笔记卡
  4. 状态扩容要重分布 普通读书笔记卡
  5. Broadcast共享规则流 普通读书笔记卡
  6. Checkpoint备份本地状态 普通读书笔记卡
  7. Barrier切分快照边界 普通读书笔记卡
  8. 异步快照降停顿 普通读书笔记卡
  9. 增量快照省写入 普通读书笔记卡
  10. Savepoint服务运维 普通读书笔记卡

07 Flink连接器

  1. 连接器是系统边界 普通读书笔记卡
  2. 端到端一致靠两端 普通读书笔记卡
  3. 幂等写吸收重复 普通读书笔记卡
  4. 事务写延后可见 普通读书笔记卡
  5. 两阶段提交有协作成本 普通读书笔记卡
  6. 新版Source拆职责 普通读书笔记卡

08 Table API & SQL的介绍和使用

  1. SQL是更高抽象 普通读书笔记卡
  2. 环境桥接两套API 普通读书笔记卡
  3. 动态表持续变化 普通读书笔记卡
  4. 流SQL受状态约束 普通读书笔记卡
  5. 状态TTL防无限膨胀 普通读书笔记卡
  6. 时间属性进入表模型 普通读书笔记卡
  7. 窗口聚合靠时间字段 普通读书笔记卡
  8. 时间窗口Join限范围 普通读书笔记卡
  9. 临时表Join查版本 普通读书笔记卡
  10. 传统Join状态最重 普通读书笔记卡

09 Flink的部署和配置

  1. 部署模式适配基础设施 普通读书笔记卡
  2. 类加载保护依赖边界 普通读书笔记卡
  3. 并行度决定最低Slot 普通读书笔记卡
  4. 内存配置分角色 普通读书笔记卡
  5. 算子链是部署优化 普通读书笔记卡
  6. 槽位共享提升利用率 普通读书笔记卡

相关主题

暂无公开主题。