[ 
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)

Reply via email to