提示(Hints)

Flink SQL支持添加提示(Hints),允许您手动影响执行计划的生成结果,从而优化SQL作业的执行。本文为您介绍如何使用SQL提示。

动态表选项提示

从VVR 4.x开始,您可以通过动态表选项来动态地制定或覆盖表选项,从而让这些表参数仅在Query级别的范围内生效。动态表选项的语法和示例,请参见动态表(dynamic table)选项

查询提示

维表联接提示

维表联接提示(Lookup Join Hints)详情,请参见维表JOIN Hints

算子状态生命周期(State TTL)提示

通过为状态设置状态生命周期,可以显著减少算子状态的大小,从而增强系统稳定性和可靠性。算子状态生命周期设置的方式详情如下:

  • 状态生命周期提示:为特殊的有状态算子设置算子粒度的状态生命周期。当前该方式仅适用于双流联接算子和分组聚合算子,具体的设置方式如下:

    • 双流联接算子

    • 分组聚合算子

      • VVR 8.0.7及以上版本:通过分组聚合状态生命周期提示实现,更多语法和示例请参见状态生命周期提示

      • VVR 8.0.6及以前版本:不支持配置算子状态生命周期提示。

  • 作业参数配置:设置作业参数来设置全局作业级别的状态生命周期,详情请参见table.exec.state.ttl

  • 专家模式:为有状态算子配置算子粒度的状态生命周期,详情请参见配置算子并发、Chain策略和TTL

说明

算子状态生命周期设置生效的优先级从高到低依次是:专家模式、状态生命周期提示、作业参数配置。

相关文档

关于提示的基本能力详情,请参见SQL Hints