在RDD中找到满足给定谓词的第一个元素

Sre*_*har 2 apache-spark

如何在普通RDD中找到第一个元素(因为在PairRDD中,我们可以使用lookup(key)API)满足谓词?在找到第一个元素之后,它应该退出RDD遍历。在不使用传统循环的情况下寻找解决方案。

Har*_*ebe 6

怎么样

rdd.filter(p).top(1)
Run Code Online (Sandbox Code Playgroud)

或者如果您没有RDD上的订单

rdd.filter(p).take(1)
Run Code Online (Sandbox Code Playgroud)

  • 不,所有转换都是惰性的,因此当没有更多元素请求时它将停止遍历。 (2认同)