Apache Flink 进阶(一):Runtime 核心机制剖析(15)

  • 更完善的资源管理:从 1.9 开始 Flink 开始了对细粒度资源匹配的支持 。 基于细粒度的资源匹配 , 用户可以为 TaskExecutor 和 Task 设置实际提供和使用的 CPU、内存等资源的数量 , Flink 可以按照资源的使用情况进行调度 。 这一机制允许用户更大范围的控制作业的调度 , 从而为进一步提高资源利用率提供了基础 。

  • 统一的 Stream 与 Batch:Flink 目前为流和批分别提供了 DataStream 和 DataSet 两套接口 , 在一些场景下会导致重复实现逻辑的问题 。 未来 Flink 会将流和批的接口都统一到 DataStream 之上 。

  • 更灵活的调度策略:Flink 从 1.9 开始引入调度插件的支持 , 从而允许用户来扩展实现自己的调度逻辑 。 未来 Flink 也会提供更高性能的调度策略的实现 。

  • Master Failover 的优化:如上节所述 , 目前 Flink 在 Master Failover 时需要重启整个作业 , 而实际上重启作业并不是必须的逻辑 。 Flink 未来会对 Master failover 进行进一步的优化来避免不必要的作业重启 。

  • 推荐阅读