我知道map和filter转换的用法,但我想澄清一些事情,map逐个更改rdd的每个元素的内容,如果我使用myrdd.map().filter().take(1)当第一个元素通过filter函数时,map()函数停止?或者执行整个map()函数,然后过滤器执行操作?我尝试转换每个rdd元素,如果一个元素满足某个条件,那么map()函数将停止并返回该元素。
发布于 2020-10-07 08:06:25
documentation似乎暗示没有捷径,整个map
和filter
都会被执行。
获取RDD的第一个num元素。
它首先扫描一个分区,然后使用该分区的结果来估计满足限制所需的额外分区的数量。
从RDD#take()中的Scala实现转换而来。
注只有在预期结果数组较小的情况下,才应使用此方法,因为所有数据都加载到驱动程序的内存中。
https://stackoverflow.com/questions/64235299
复制相似问题