2 gb很小所以通常默認設置是最好的(所以在大多數情況下更好的結果不是設置類似的重新分配等,讓一切催化劑優化器)。如果你想設置自定義分區:
有很多視頻數據磚youtube頻道(一些很長)。
在我看來最重要的和簡單的分析數據傾斜,這也會影響情況一切都自動管理(我們可以看到它在UI火花在1秒1分區處理和其他例如在1分鍾)。它可能發生當我們讀取數據是錯誤的切塊(常見的問題是,人們在sql jdbc讀下界和upperBound將ids例如桶每1000 id在分區,但隨著時間的推移id增長所以它使數據傾斜在每個分區將1000行,但在最後一個將所有行上麵upperBond可以有數百萬…)
2 gb很小所以通常默認設置是最好的(所以在大多數情況下更好的結果不是設置類似的重新分配等,讓一切催化劑優化器)。如果你想設置自定義分區:
有很多視頻數據磚youtube頻道(一些很長)。
在我看來最重要的和簡單的分析數據傾斜,這也會影響情況一切都自動管理(我們可以看到它在UI火花在1秒1分區處理和其他例如在1分鍾)。它可能發生當我們讀取數據是錯誤的切塊(常見的問題是,人們在sql jdbc讀下界和upperBound將ids例如桶每1000 id在分區,但隨著時間的推移id增長所以它使數據傾斜在每個分區將1000行,但在最後一個將所有行上麵upperBond可以有數百萬…)
@Hubert杜德克所以火花自動分區數據,這取決於cpu。舉個例子,如果我有4個節點集群每個節點有兩個核心意味著火花將讓我dataframe 8個分區?
@Hubert杜德克你能解釋為:
“DataFrame增加分區號200引發運行時自動執行數據轉移(加入(),聯盟(),聚合函數)。”
它是來自https://sparkbyexamples.com/spark/spark-shuffle-partitions/
4工人2芯在很多情況下會給8個分區(但並非總是如此)。你總是可以通過運行YourDataframe.rdd.getNumPartitions驗證它
有更多提到的鏈接。
看視頻也很好(雖然它是更高級的)https://www.youtube.com/watch?v=daXEp4HmS-E