gpt4 book ai didi

java - Spark 转换和 Action 的逻辑是否需要线程安全?

转载 作者:搜寻专家 更新时间:2023-11-01 03:17:49 25 4
gpt4 key购买 nike

这可能是个愚蠢的问题。但是,我想知道我是否有这样的东西 - rdd.mapPartitions(func)func 中的逻辑应该是线程安全的吗?

谢谢

最佳答案

简短的回答是否定的,它不一定是线程安全的。

之所以会这样,是因为spark在分区之间划分了数据。然后它为每个分区创建一个任务,您编写的函数将作为单线程操作在该特定分区内运行(即没有其他线程会访问相同的数据)。

也就是说,您必须确保不会通过访问非 RDD 数据的资源来手动创建线程“不安全”。例如,如果您创建一个静态对象并访问它,它可能会导致问题,因为多个任务可能在同一个执行程序 (JVM) 中运行并访问它。也就是说,除非您确切地知道自己在做什么,否则一开始就不应该做这样的事情...

关于java - Spark 转换和 Action 的逻辑是否需要线程安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42240625/

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