flink-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kurt Young (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (FLINK-11822) Introduce Flink metadata handlers
Date Wed, 20 Mar 2019 02:30:00 GMT

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

Kurt Young updated FLINK-11822:
    Component/s:     (was: API / Table SQL)
                 SQL / Planner

> Introduce Flink metadata handlers
> ---------------------------------
>                 Key: FLINK-11822
>                 URL: https://issues.apache.org/jira/browse/FLINK-11822
>             Project: Flink
>          Issue Type: New Feature
>          Components: SQL / Planner
>            Reporter: godfrey he
>            Assignee: godfrey he
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 10m
>  Remaining Estimate: 0h
> Calcite has defined various metadata handlers(e.g. {{RowCoun}}, {{Selectivity}} and provided
default implementation(e.g. {{RelMdRowCount}}, {{RelMdSelectivity}}). However, the default
implementation can't completely meet our requirements, e.g. some of its logic is incompleteļ¼Œand
some RelNodes  are not considered.
> There are two options to meet our requirements:
> option 1. Extends from default implementation, overrides method to improve its logic,
add new methods for new {{RelNode}}. The advantage of this option is we just need to focus
on the additions and modifications. However, its shortcomings are also obvious: we have no
control over the code of non-override methods in default implementation classes especially
when upgrading the Calcite version.
> option 2. Extends from metadata handler interfaces, reimplement all the logic. Its shortcomings
are very obvious, however we can control all the code logic that's what we want.
> so we choose option 2!
> In this jira, only basic metadata handles will be introduced, including:
> {{FlinkRelMdPercentageOriginalRow}},
> {{FlinkRelMdNonCumulativeCost}},
> {{FlinkRelMdCumulativeCost}},
> {{FlinkRelMdRowCount}},
> {{FlinkRelMdSize}},
> {{FlinkRelMdSelectivity}},
> {{FlinkRelMdDistinctRowCoun}},
> {{FlinkRelMdPopulationSize}},
> {{FlinkRelMdColumnUniqueness}},
> {{FlinkRelMdUniqueKeys}}

This message was sent by Atlassian JIRA

View raw message