Apache Spark中mapPartition和foreachPartition的区别是什么

时间:2018-03-07 00:47:06

标签: apache-spark pyspark pyspark-sql

我有一个DataFrame,其中一列是逗号分隔数据。

例如:数据如下所示: [{值:1},{值:2,价值:3},{某些值},{somevalue,othervalue}]

该列是String数据类型。我想将其转换为List并应用一些功能。 现在我有一个函数,用于将String列转换为List&其他应用逻辑。

但哪个功能会更好&优化,因为我们有2个类似的声音函数 mapPartitions & foreachPartitions ,它是否具有完全相同的性能&在哪种场景中使用哪一个?

1 个答案:

答案 0 :(得分:2)

与map和foreach之间的差异相同。在这里寻找好的解释 - Is there a difference between foreach and map?

mapPartitions和foreachPartitions是适用于Dataframe的每个分区的转换/操作,而不是每个元素。请参阅此处,了解对比map和mapPartitions的解释 - Apache Spark: map vs mapPartitions?

根据您的描述,您会想要地图或foreach。