有没有直接转换JavaRDD<ArrayList<T>>
的方法至JavaRDD<T>
使用 Apache-Spark 的 Java API?
JavaPairRDD<NullWritable, ArrayList<Record>> baseRDD = sc.newAPIHadoopFile(args[2], InputFormat2.class, NullWritable.class,ArrayList.class, conf);
JavaRDD<ArrayList<Record>> mapLines1 = baseRDD.values();
我想转换 JavaRDD<ArrayList<Record>>
至JavaRDD<Record>
.
最佳答案
您可以简单地flatMap
:
rdd.flatMap(new FlatMapFunction<ArrayList<Record>, Record>() {
@Override
public Iterable<Record> call(ArrayList<Record> records) {
return records;
}
});
关于java - 将 JavaRDD<ArrayList<T>> 转换为 JavaRDD<T>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33488397/