我是新来的火花。我一直在研究涉及两个数据集的代码。因此,我开始使用PairFlatMapFunction,我在其中处理映射器。
JavaPairRDD<Integer, String> trainingArray = trainingData.flatMapToPair(new PairFlatMapFunction<String, Integer, String>(){
public Iterable<Tuple2<Integer, String>> call(String s) {
//code to form the tuples of type Tuple2<Integer, String>
// new Tuples2<Integer, String>
}
如何将元组添加回可由reducer处理的iterable类(reduceByKey)。
任何指针都会非常感激。
答案 0 :(得分:1)
谢谢!
我找到了这个问题的答案。
我们需要定义下面的ArrayList
List<Tuple2<Integer, String>> result = new ArrayList<Tuple2<Integer, String>>();
添加元组如下
result.add(new Tuple2<Integer, String>(keyValue, concat));
并返回结果。
答案 1 :(得分:0)
如果您的结果只包含一个元组,那么这可能是更好的选择。
return Collections.singletonList(new Tuple2<Integer, String>(keyValue, concat)).iterator();