获取JavaPairRDD的密钥

时间:2017-03-10 06:54:21

标签: apache-spark

我有一个 JavaPairRDD< String,Iterable<元组2<字符串,字符串>>>

我将其打印在一个文件中,内容为

(ABC,[(ABC,1)])
(BBC,[(BBC,1)])
(CBD,[(CBD,1)])
(BBD,[(BBD,1)])
(ACD,[(ACD,1)])

现在我想只将字符串ABC,BBC,CBD,BBD,ACD带到JavaRDD并将它们打印在一个文件中

直到现在我可以使用foreach

在控制台中打印它们
foreach(new VoidFunction<Tuple2<String, Iterable<Tuple2<String, String>>>>() {

            @Override
            public void call(Tuple2<String, Iterable<Tuple2<String, String>>> t) throws Exception {
                // TODO Auto-generated method stub
                System.out.println(t._1);
            }
        });

我想在文件中做同样的事情。我是新手,所以我不知道如何实现这一目标。任何帮助将非常感激。提前谢谢。

1 个答案:

答案 0 :(得分:0)

请尝试:

pairRdd.keys().coalesce(1).saveAsTextFile("some_path");