Part 17 of this series introduces several possible Shuffle methods and their adoption in MapReduce and Spark.