godfrey he created FLINK-20478:
----------------------------------

             Summary: Show "Optimized Execution Plan" instead of "Physical 
Execution Plan" in explain result
                 Key: FLINK-20478
                 URL: https://issues.apache.org/jira/browse/FLINK-20478
             Project: Flink
          Issue Type: Sub-task
          Components: Table SQL / Planner
            Reporter: godfrey he


Currently, the explain result includes "Abstract Syntax Tree", "Optimized 
Logical Plan" and "Physical Execution Plan". While the "Optimized Logical Plan" 
is an {{ExecNode}} graph, and the 
"[ExplainDetail|https://github.com/apache/flink/blob/master/flink-table/flink-table-api-java/src/main/java/org/apache/flink/table/api/ExplainDetail.java]";
 represents the expected explain details, including {{ESTIMATED_COST}} and 
{{CHANGELOG_MODE}} now. Those types can only used for Calicte {{RelNode}}s 
instead of {{ExecNode}}. So I suggest to make the following adjustments:
1. Keep "Abstract Syntax Tree" as it, which represents the original 
(un-optimized) {{RelNode}} graph converted from {{SqlNode}}.
2. Rename "Optimized Logical Plan" to "Optimized Physical Plan", which 
represents the optimized physical {{RelNode}} graph composed of 
{{FlinkPhysicalRel}}. {{ESTIMATED_COST}} and {{CHANGELOG_MODE}} describe the 
expected explain details for "Optimized Physical Plan".
3.Replace "Physical Execution Plan" with "Optimized Execution Plan", which 
represents the optimized {{ExecNode}} graph. Currently, many optimizations are 
based on {{ExecNode}} graph, such as sub-plan reuse, multiple input rewrite. We 
may introduce more optimizations in the future. So there are more and more 
difference between "Optimized Physical Plan" and "Optimized Execution Plan". We 
do not want to show tow execution plans, and "Physical Execution Plan" for 
{{StreamGraph}} is less important than "Optimized Execution Plan". If we want 
to introduce "Physical Execution Plan" in the future, we can add a type named 
"PHYSICAL_EXECUTION_PLAN" in {{ExplainDetail}} to support it. There is already 
an issue to do the similar things, 
[FLINK-19687|https://issues.apache.org/jira/browse/FLINK-19687]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to