flink-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ricky Pogalz (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (FLINK-2106) Add outer joins to API, Optimizer, and Runtime
Date Sat, 08 Aug 2015 08:14:45 GMT

    [ https://issues.apache.org/jira/browse/FLINK-2106?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14662873#comment-14662873

Ricky Pogalz commented on FLINK-2106:

Hello [~fhueske], [~StephanEwen] and Watchers,
we currently work on the Runtime part of this ticket and I wonder how we should deal with
the different outer join types. At the moment, I only see two possibilities:

1. One {{OuterJoinDriver}} which handles all types. But then we need to pass the outer join
type somehow to the driver. Is this only possible by adding a new field to the {{TaskConfig}}
or is there another way, too? 
2. Dedicated driver classes for each outer join type (i.e. {{LeftOuterJoinDriver}}, {{RightOuterJoinDriver}},

Comparing both options, the first one requires 1 {{OuterJoinDriver}} and 1 additional {{DriverStrategy}}
enum field for each outer join strategy, but also requires passing of the {{outerJoinType}}.
The second case means that we do not have to pass the {{outerJoinType}}, but would require
an abstract + 3 driver classes to avoid duplicated code and 3 additional enum fields in the
{{DriverStrategy}} for each outer join strategy if I am not wrong.

If you see another option or have any suggestion which one fits best, please let us know.
Thanks in advance!

> Add outer joins to API, Optimizer, and Runtime
> ----------------------------------------------
>                 Key: FLINK-2106
>                 URL: https://issues.apache.org/jira/browse/FLINK-2106
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Java API, Local Runtime, Optimizer, Scala API
>            Reporter: Fabian Hueske
>            Assignee: Ricky Pogalz
>            Priority: Minor
>             Fix For: pre-apache
> Add left/right/full outer join methods to the DataSet APIs (Java, Scala), to the optimizer,
and the runtime of Flink.
> Initially, the execution strategy should be a sort-merge outer join (FLINK-2105) but
can later be extended to hash joins for left/right outer joins.

This message was sent by Atlassian JIRA

View raw message