是否有任何方法可以使用Apache Spark减少rdd中的元素数量[作为转换]

时间:2015-12-02 05:38:15

标签: apache-spark action transformation take

我正在使用Apache Spark进行查询处理引擎。 我最近遇到的问题是我想限制rdd中的元素数量。

我知道rdd中有take函数,可用于从rdd中仅检索给定数量的元素。但是,应用此函数后,结果将不会是rdd。

即使我们应用此功能,必须保留rdd(作为转换)

所以我现在所做的就是关注

public JavaRDD<Map<String,Object>> limitRDD(JavaRDD<Map<String,Object>> rdd, JavaSparkContext context, int number){
context.parallelize(rdd.take(number));
return rdd;

我认为这是浪费大量时间。 但是,我无法想到使用map,filter等转换来实现此功能。

如果没有我在这里做的事情,有没有实现这个目标?

由于

1 个答案:

答案 0 :(得分:0)

我认为sample可能是您想要的功能。