在用Java编写MR代码时,如何决定何时使用Map-Side Join或Reduce-Side?

jka*_*anc 6 hadoop mapreduce hadoop-streaming

在用Java编写MR代码时,如何决定何时使用Map-Side Join或Reduce-Side?

Ven*_*hik 1

如果您的表之一可以容纳在内存中,您将使用 Mapside join,这将减少排序和洗牌数据的开销。

由于不需要对输入数据集进行结构化,因此Reduce-Side 连接比Map-Side 连接更简单。但效率较低,因为两个数据集都必须经过 MapReduce shuffle 阶段。具有相同键的记录在reducer中被聚集在一起。