我试图找出Spark中所有非确定性的来源.我知道非确定性可以来自用户提供的功能,例如在地图(f)中,f涉及随机.相反,我正在寻找可能导致非确定性的操作,无论是在较低级别的转换/动作方面,例如改组. 最佳答案 脱离我的头顶:
>需要改组的操作(或一般的网络流量)可以以非确定性顺序输出值.它包括像groupBy *或join这样的明显案例.一个不太明显的例子是排序后的关系顺序
>依赖于不断变化的数据源或可变全局状态的操作
>在转换中执行的副作用,包括累加器更新
我试图找出Spark中所有非确定性的来源.我知道非确定性可以来自用户提供的功能,例如在地图(f)中,f涉及随机.相反,我正在寻找可能导致非确定性的操作,无论是在较低级别的转换/动作方面,例如改组. 最佳答案 脱离我的头顶:
>需要改组的操作(或一般的网络流量)可以以非确定性顺序输出值.它包括像groupBy *或join这样的明显案例.一个不太明显的例子是排序后的关系顺序
>依赖于不断变化的数据源或可变全局状态的操作
>在转换中执行的副作用,包括累加器更新