我想知道在Spark中具有可序列化功能的确切原因,并想知道如果可能的话,想知道这些场景,因为序列化会导致问题,
就我的理解而言,确保接缝更少没有副作用并行处理,而不是发送数据必要的命令范式, 函数将被发送到节点并且数据被并行处理。
我的上述想法是否正确。???就我的研究而言,函数式编程是并行处理/并发编程的一个非常好的方法,所以我认为这就是原因。
当我们传递函数时,是否具有可序列化函数的安全原因。?
提前致谢。
答案 0 :(得分:1)
在Spark中调用RDD
API时需要可序列化闭包作为函数参数的原因是你在驱动程序机器上编写和定义这些函数(通常是你的笔记本电脑),你需要运送这些函数您的执行者(通常不是您的笔记本电脑,而是网络中的其他机器)。
因此,无论无状态在函数式编程中的好处如何,可序列化都可以有效地用于将代码传送到网络中的不同机器。如果您需要,可以使用tips处理可序列化问题。