Spark MapWithState执行模型

时间:2016-08-09 15:58:57

标签: java apache-spark

我在mapWithState中保留一对由String作为键和一个包含数组作为State的Object组成的对。如果出现包含相同键的新流,我正在更新数组。如果spark应用程序在多个节点上运行,那么它们是否有可能更新数组两次,或者是一次只允许一个节点更新状态?我现在不知道mapWithState执行模型是如何工作的。

谢谢!

1 个答案:

答案 0 :(得分:1)

将为每个密钥值对调用

StateSpec函数,因此每个批次可以有多个更新,但是单个更新是顺序的,并且对分区数据进行操作,因此如果这是您所需要的,则不存在更新冲突。担心。