2
將RDD寫入文件之前執行以下轉換之間的區別是什麼?Apache Spark中的混洗與非混洗聚結
- COALESCE(1,隨機播放= TRUE)
- COALESCE(1,隨機播放= FALSE)
代碼示例:
val input = sc.textFile(inputFile)
val filtered = input.filter(doSomeFiltering)
val mapped = filtered.map(doSomeMapping)
mapped.coalesce(1, shuffle = true).saveAsTextFile(outputFile)
vs
mapped.coalesce(1, shuffle = false).saveAsTextFile(outputFile)
它是如何與收集比較() ?我完全知道Spark保存方法會將其與HDFS風格的結構一起存儲,但我更關注collect()和shuffled/non-shuffle coalesce()的數據分區方面。
我不確定這是否正確。我已經看到了RDD計劃結構中輸出分區數量的限制,以迫使其他操作也使用較低數量(本例中爲1)的分區。這通常不是你想要的。 –