返回

Flink SQL 1.13 新版本带来更优体验,SQL 引擎提升可扩展性

前端

Flink SQL 1.13 新版本带来更优体验,SQL 引擎提升可扩展性

在 5 月 22 日的 Apache Flink 社区北京站 Meetup 中,Flink 社区的专家们分享了 Flink SQL 1.13 版本中的重要改进。本次分享主要涵盖了 5 个 FLIP(Flink Improvement Proposal),涉及到 SQL 引擎的可扩展性、增强的 SQL 语法支持、改进的查询优化等方面。

1. Flink SQL 引擎可扩展性提升

FLIP-181:可扩展的 SQL 引擎

Flink SQL 引擎在 1.13 版本中迎来了重大升级,使其能够支持更大的查询负载和更大的数据集。通过引入新的分布式执行架构,SQL 引擎现在可以将查询任务分布到多个工作节点上并行执行,从而提高了整体的查询性能和可扩展性。

2. 增强的 SQL 语法支持

FLIP-163:支持窗口函数 OVER 子句

Flink SQL 1.13 版本增加了对窗口函数 OVER 子句的支持,这使得用户可以在窗口内对数据进行聚合、排序等操作。OVER 子句的引入大大增强了 Flink SQL 的表达能力,使其实现更多复杂的查询场景。

FLIP-174:支持 DDL 中的 ALTER TABLE 语句

Flink SQL 1.13 版本新增了对 DDL 中 ALTER TABLE 语句的支持,允许用户在不重建表的情况下修改表结构。ALTER TABLE 语句可以用来添加或删除列、修改列的数据类型等,从而提高了表的可维护性和灵活性。

3. 改进的查询优化

FLIP-166:基于成本的查询优化器

Flink SQL 1.13 版本中,查询优化器进行了重大的改进,采用了基于成本的优化策略。新的优化器可以根据查询的执行成本来选择最优的执行计划,从而提高查询性能。

FLIP-186:支持谓词下推

Flink SQL 1.13 版本中,增加了对谓词下推的支持。谓词下推是指将过滤条件从上游算子下推到下游算子,从而减少需要处理的数据量。谓词下推可以显著提高查询性能,尤其是在数据量较大的情况下。

4. 其他改进

除了以上 5 个 FLIP 之外,Flink SQL 1.13 版本还包含了许多其他改进,包括:

  • 改进的错误处理机制,提供更友好的错误提示信息。
  • 更好的集成支持,可以与其他 Flink 模块(如 Flink ML)无缝衔接。
  • 性能改进,提高了查询执行速度和吞吐量。

总结

Flink SQL 1.13 版本是一次重大升级,带来了许多实用的更新和重要改进。这些改进使得 Flink SQL 更加强大、灵活和易用,使其成为构建高性能流式数据处理应用的理想选择。