1.13包括一系列重要改动使用户可以更好的理解流作业的性能。当流作业的性能不及预期的时候,这些改动可以使用户可以更好的分析原因。这些改动包括用于识别瓶颈节点的负载和反压可视化、分析算子热点代码的 CPU 火焰图和分析 State Backend 状态的 State 访问性能指标。
Flink1.13.1其中一些比较重要的修改包括:
- 被动扩缩容
- 分析应用的性能
- 瓶颈检测与反压监控
- Web UI 中的 CPU 火焰图
- State 访问延迟指标
- 通过Savepoint来切换Sate Backend。
- K8s部署时使用用户指定的Pod模式
- 生产可用的Unaligned Checkpoint
- 机器学习迁移到单独的仓库
SQL / Table API 进展:
- 通过 Table-valued 函数来定义时间窗口
- 提高 DataStream API 与 Table API / SQL 的互操作能力
- SQL Client: 初始化脚本和语句集合 (Statement Sets)
- 配置简化和代码共享
- 通过语句集合来支持多查询
- Hive 查询语法兼容性
- 优化的 SQL 时间函数
PyFlink 核心优化:
- Python DataStream API 中的有状态算子
- PyFlink DataStream API 中的用户自定义窗口
- PyFlink Table API 中基于行的操作
- PyFlink DataStream API 支持 Batch 执行模式
其它优化:
- Web UI 支持历史异常
- 优化失败 Checkpoint 的异常和失败原因的汇报
- 提供『恰好一次』一致性的 JDBC Sink
- PyFlink Table API 在 Group 窗口上支持用户自定义的聚合函数
- Batch 执行模式下 Sort-merge Shuffle 优化
- HBase 连接器支持异步维表查询和查询缓存