2016-11-14 55 views

回答

6

每個藍色的盒子就是Apache星火作業的步驟。

您是想詢問WholeStageCodegen這東西是:

全級代碼生成(又名WholeStageCodegen或WholeStageCodegenExec)融合多個運營商(爲支持的代碼生成計劃的子樹)連成一個單一的Java函數旨在提高執行性能。它將查詢合併爲單個優化函數,該函數消除虛擬函數調用並利用CPU寄存器獲取中間數據。

你可以在這裏SPARK-12795

查看詳細信息交換部件作業之間的洗牌交易所更多的細節:

ShuffleExchange是一元物理運算符。它對應於Repartition(啓用了shuffle)和RepartitionByExpression邏輯運算符(在BasicOperators策略中轉換)。

所有這些信息,你可以在你的代碼中使用explaincommand

每一步都顯示了你的數據框會做得到,這是好找,如果你的邏輯是正確的。如果您想了解更多關於Spark UI的詳細信息,我建議您參閱Spark Summit的this演示文稿,並閱讀有關執行計劃的文章this

這些信息會告訴你更多關於你的疑問。

+1

解釋命令對檢查spark完成的優化非常有用。 –