所以在Spark1和2之後的版本中,默認的ShuffleManager改為SortShuffleManager,SortShuffleManager相對於HashShuffleManager有所改進。
重點是每個任務在洗牌的時候會產生更多的臨時磁盤文件,但是最後所有的臨時文件都會合並成壹個磁盤文件,所以每個任務只有壹個磁盤文件。
下壹階段的shufflereadtask在拉自己的數據時,只需要根據索引讀取每個磁盤文件中的部分數據。