在火花加入中,表格顺序像猪一样吗?

iha*_*nny 9 hadoop apache-pig bigdata apache-spark

Spark相关- 加入2个PairRDD元素

在pig中进行常规连接时,连接中的最后一个表不会被带入内存而是通过流式传输,因此如果A的每个键的基数较小且B基数较大,那么从性能角度来看,这样做join A, B要好得多join A by B(避免泄漏和OOM)

火花中有类似的概念吗?我没有看到任何这样的建议,并想知道它怎么可能?实现在我看来几乎和猪一样:https://github.com/apache/spark/blob/master/core/src/main/scala/org/apache/spark/rdd/CoGroupedRDD.scala

或者我错过了什么?

aar*_*man 6

它没有区别,在 spark 中,RDD 只有在缓存时才会被带入内存。所以在spark中你可以缓存较小的RDD来达到同样的效果。你可以在 spark 中做的另一件事是,如果所有的 RDD 被加入都具有相同的分区器,则不需要进行 shuffle。