PySpark RDD的高效布尔减少`any`,`all`?

时间:2014-06-08 16:27:17

标签: apache-spark

PySpark支持常见缩减,例如summincount,...它是否支持allany等布尔缩减?

我总是fold超过or_and_,但这似乎效率低下。

2 个答案:

答案 0 :(得分:0)

没有底层的Scala API没有它,所以Python肯定不会。我不认为他们会添加它,因为它很容易根据filter来定义。

使用fold是没有效率的,因为它不会平行化。执行.filter(!condition).take(1).isEmpty表示.forall(condition).filter(condition).take(1).nonEmpty表示.exists(condition)

(一般建议:底层的Scala API通常比Python API更灵活,建议你转向它 - 它也使调试变得更容易,因为你可以挖掘更少的层.Scala意味着可扩展的语言 - 它可以更好地扩展应用程序,比动态类型语言更强大)

答案 1 :(得分:0)

这很晚了,但是一组const result = [{name: 'some', date: modifier(value)}, {name: 'some', date: modifier(value)}, {name: 'some', date: modifier(value)}] all上的booleanz相同,而min(z) == True与{{ 1}}