[ 
https://issues.apache.org/jira/browse/FLINK-8950?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Aljoscha Krettek updated FLINK-8950:
------------------------------------
    Component/s:     (was: Table SQL / API)
                 Table SQL / Legacy Planner

> "Materialize" Tables to avoid recomputation.
> --------------------------------------------
>
>                 Key: FLINK-8950
>                 URL: https://issues.apache.org/jira/browse/FLINK-8950
>             Project: Flink
>          Issue Type: New Feature
>          Components: Table SQL / Legacy Planner
>    Affects Versions: 1.5.0
>            Reporter: Fabian Hueske
>            Priority: Major
>
> Currently, {{Table}} objects of the Table API / SQL are treated like virtual 
> views, i.e., all relational operators that have been applied on them are 
> recorded and translated when a {{Table}} is emitted to a {{TableSink}} or 
> converted into a {{DataSet}} or {{DataStream}}.
> In case a {{Table}} is accessed twice, the (sub-)query that it represents is 
> translated twice into a {{DataSet}} or {{DataStream}} program and hence also 
> executed twice which is inefficient. Currently, the only way to avoid this is 
> to convert the {{Table}} into a {{DataSet}} or {{DataStream}}, which will 
> cause the optimizer to generate a plan and register it back as a new 
> {{Table}}.
> We should offer a method to internally "materialize" a {{Table}} object, 
> i.e., to optimize, generate a plan, and register the plan as an internal 
> table. All queries / operations that are evaluated on the materialized 
> {{Table}} will start from the same {{DataSet}} or {{DataStream}} such that it 
> is not computed multiple times.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to