[ 
https://issues.apache.org/jira/browse/DATAFU-130?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16732684#comment-16732684
 ] 

Matthew Hayes commented on DATAFU-130:
--------------------------------------

Patch looks good to me except I think we should append a number to 
left_outer_join to indicate the number of relations so we can add more left 
join macros in the future.  Maybe call it left_outer_join2 since you are 
joining with 2 other relations?  We could also add a left_outer_join and 
left_outer_join3.  Thoughts?

> Add left outer join macro described in the DataFu guide
> -------------------------------------------------------
>
>                 Key: DATAFU-130
>                 URL: https://issues.apache.org/jira/browse/DATAFU-130
>             Project: DataFu
>          Issue Type: New Feature
>            Reporter: Eyal Allweil
>            Assignee: Eyal Allweil
>            Priority: Major
>              Labels: macro, newbie
>         Attachments: DATAFU-130.patch
>
>
> In our 
> [guide|http://datafu.incubator.apache.org/blog/2013/09/04/datafu-1-0.html], a 
> macro is described for making a three-way left outer join conveniently. We 
> can add this macro to DataFu to make it even easier to use.
> The macro's code is as follows:
> {noformat}
> DEFINE left_outer_join(relation1, key1, relation2, key2, relation3, key3) 
> returns joined {
>   cogrouped = COGROUP $relation1 BY $key1, $relation2 BY $key2, $relation3 BY 
> $key3;
>   $joined = FOREACH cogrouped GENERATE
>     FLATTEN($relation1),
>     FLATTEN(EmptyBagToNullFields($relation2)),
>     FLATTEN(EmptyBagToNullFields($relation3));
> }
> {noformat}
> (we would obviously want to add a test for this, too)



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

Reply via email to