閱讀576 返回首頁    go 阿裏雲 go 技術社區[雲棲]


spark源碼係列文章------shuffle模塊詳解

一、Basic shuffle writer實現解析

在Executor上執行shuffle Map Task時,最終會調用shuffleMapTask的runTask,核心邏輯如下:

1.從sparkEnv中獲得shuffleManager;

2.從manager中獲得writer

3.調用RDD開始計算,運算結果通過writer進行持久化,持久化之前通過Aggregator來確定是否需要進行Map端聚合,然後將結果通過FileShuffleManager#forMapTask的方法寫入,寫入完成後,會將元數據信息寫入MapStatus,然後下遊的Task可以通過這個MapStatus取得需要處理的數據。



最後更新:2017-07-19 23:02:36

  上一篇:go  Introduction to Dynamic Tables
  下一篇:go  傻瓜式安裝屬於自己的VPN服務器