0

我正在使用 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;

我认为这是对时间的巨大浪费。但是,我想不出任何方法可以使用映射、过滤器等转换来实现此功能。

无论如何,如果没有我在这里所做的事情,是否可以实现这一目标?

谢谢

4

1 回答 1

0

我想sample可能是你想要的功能。

于 2015-12-02T05:52:10.283 回答