我有一个JavaPairRDD<Dimension, Metrics>
,这里的Dimension
和Metrics
对象有很多成员。有没有一种方法可以将两个对象的所有列/成员都转换为Dataset<Row>
。或者,还有一种方法可以将此JavaPairRDD
转储到文件中,两个对象的列/成员都用制表符或逗号分隔。
答案 0 :(得分:0)
您可以使用map()转换将JavaPairRDD转换为JavaRDD,将Dimension和Metrics中的所有成员表示为逗号分隔的字符串。
此后,您可以save it as a Text file。
执行此操作的逻辑步骤:
在您的spark应用程序中-
Function<Tuple2<Dimension, Metrics>, String> f = tuple -> (tuple._1.toString() +"," + tuple._2.toString());
JavaRDD csvRdd = pairRDD.map(f);
csvRdd.saveAsTextFile("your file path")