gpt4 book ai didi

scala - spark 中的 flatMap 会导致洗牌吗?

转载 作者:行者123 更新时间:2023-12-04 06:33:51 25 4
gpt4 key购买 nike

spark 中的 flatMap 是否像 map 函数一样,因此不会引起混洗,还是会触发混洗。我怀疑它确实会导致洗牌。有人可以确认吗?

最佳答案

map 或 flatMap 都没有改组。引起shuffle的操作有:

  • 重新分区操作:
  • 重新分区:
  • 合并:
  • ByKey 操作(计数除外):
  • GroupByKey:
  • ReduceByKey:
  • 加入操作:
  • 协作组:
  • 加入:

  • 尽管新混洗数据的每个分区中的元素集是确定性的,分区本身的排序也是确定的,但这些元素的排序不是。如果在 shuffle 之后需要可预测的有序数据,那么可以使用:
  • mapPartitions 使用例如 .sorted
  • 对每个分区进行排序
  • repartitionAndSortWithinPartitions 在重新分区的同时有效地对分区进行排序
  • sortBy 生成全局有序的 RDD

  • 更多信息在这里: http://spark.apache.org/docs/latest/programming-guide.html#shuffle-operations

    关于scala - spark 中的 flatMap 会导致洗牌吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36414123/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com