[
https://issues.apache.org/jira/browse/FLINK-20670?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jark Wu updated FLINK-20670:
----------------------------
Fix Version/s: (was: 1.13.0)
> Support query hints for Flink SQL
> ---------------------------------
>
> Key: FLINK-20670
> URL: https://issues.apache.org/jira/browse/FLINK-20670
> Project: Flink
> Issue Type: New Feature
> Components: Table SQL / API
> Reporter: Shuo Cheng
> Priority: Major
>
> Now Flink has supported dynamic table options based on the Hint framework of
> Calcite. Besides this, Hint syntax is also very useful for query
> optimization, as there is no perfect planner, and query hints provide a
> mechanism to direct the optimizer to choose an efficient query execution plan
> based on the specific criteria.
> Currently, almost most popular databases and big-data frameworks support
> query hint, for example, Join hints in Oracle are used as following:
> {code:sql}
> SELECT /*+ USE_MERGE(employees departments) */ *
> FROM employees, departments
> WHERE employees.department_id = departments.department_id;
> {code}
> Flink also have several join strategy for batch job, i.e., Nested-Loop,
> Sort-Merge and Hash Join, it will be convenient for users to produce an
> efficient join execution plan if Flink supports Join hint. Besides Join in
> batch job, it's also possible to use join hints to support partitioned
> temporal table join in future. In a word, query hint, especially join hint
> now, will benefit Flink users a lot.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)