我需要加入 2 个具有相同字段集的管道,即('id,'groupName,'name),与 SQL UNION 的工作方式相同。如何在 Twitter Scalding 中做到这一点?
问问题
1247 次
3 回答
5
使用 ++ 连接管道,然后使用 project 摆脱 id 字段。
如果这个答案太简洁,请告诉我,我会尝试扩展。
于 2013-01-31T15:32:33.560 回答
0
要在三组字段上连接两个管道,您首先想知道哪个管道在较小的数据集上运行:
largerPipe1.joinWithSmaller(('id1, 'groupName1, 'name1) -> ('id2, 'groupName2, 'name2), smallerPipe2)
请注意,字段名称不需要相同。您只需要将它们按相同的顺序排列即可。结果将仅包含 largePipe1 中的符号名称。
请注意下面的评论:++ 连接操作只是将数据从一个管道附加到另一个管道。这不是一个连接。
于 2013-12-19T22:13:52.610 回答
0
def ++[U >: T](其他: TypedPipe[U]): TypedPipe[U]
合并两个 TypedPipes(不保证顺序) 这仅在执行组(或连接)时实现。
于 2014-11-12T13:36:33.493 回答