[
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}}, {{FullOuterJoinDriver}}).
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
(v6.3.4#6332)