请写出java生成spark的pairRDD的案例
时间: 2024-06-10 09:09:11 浏览: 70
当然可以。以下是一个简单的Java生成Spark的PairRDD的案例:
```
JavaRDD<String> lines = sc.textFile("hdfs://path/to/input/file");
JavaPairRDD<String, Integer> pairs = lines.mapToPair(s -> new Tuple2<>(s, 1));
JavaPairRDD<String, Integer> counts = pairs.reduceByKey((a, b) -> a + b);
counts.saveAsTextFile("hdfs://path/to/output/directory");
```
这个案例中,我们首先使用SparkContext对象sc从HDFS中读取文本文件,并生成一个JavaRDD<String>对象lines。然后,我们使用mapToPair方法将每一行文本转换为一个Tuple2<String, Integer>对象,其中String表示文本内容,Integer初始化为1。接着,我们使用reduceByKey方法按照String键值对归并,最后生成一个JavaPairRDD<String, Integer>对象counts。最后,我们使用saveAsTextFile方法将counts对象保存到HDFS中的指定目录下。
希望这个案例能够对你有所帮助!
阅读全文