我在Spark JobServer日志中收到以下内容的消息:
阶段14包含一个非常大的任务(9523 KB)。建议的最大任务大小为100 KB。
我正在用这段代码创建我的RDD:
List<String> data = new ArrayList<>();
for (int i = 0; i < 2000000; i++) {
data.add(UUID.randomUUID().toString());
}
JavaRDD<String> randomData = sc.parallelize(data).cache();
据我所知,第一次运行它可能很大,因为RDD中的数据尚未存在于执行程序节点上。
我原本以为它会在后续运行中很快(我使用Spark JobServer来保持会话上下文,并重用RDD),因为我正在重用RDD所以数据应该存在于节点
代码非常简单:
private static Function<String, Boolean> func = new Function<String, Boolean>() {
public Boolean call(String s) {
return s.contains("a");
}
};
----
rdd.filter(aFunc).count();