Spark学习基础转换算子案例(单词计数(WordCount))

本案例在文件中读取,上面是文件路径

这是文件内容

代码如下:

java 复制代码
package RDD.test;

import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaPairRDD;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;

import java.util.Arrays;

public class RDD_test_WordCount {

    public static void main(String[] args) {
        SparkConf sparkConf = new SparkConf().setMaster("local").setAppName("sparkcore");

        JavaSparkContext context = new JavaSparkContext(sparkConf);

        JavaRDD<String> rdd = context.textFile("data/word.txt");

        JavaRDD<String> rdd1 = rdd.flatMap(line -> Arrays.asList(line.split(" ")).iterator());

        JavaPairRDD<String, Iterable<String>> stringIterableJavaPairRDD = rdd1.groupBy(num -> num);

        JavaPairRDD<String, Integer> stringIntegerJavaPairRDD = stringIterableJavaPairRDD.mapValues(
                ite -> {
                    int len = 0;
                    for (String s : ite) {
                        len++;
                    }

                    return len;
                }
        );

        stringIntegerJavaPairRDD.collect().forEach(System.out::println);

        context.close();

    }
}

运行结果为:

相关推荐
微三云马玮均—GEO源码系统 私有化部署8 小时前
消费返物业费:消费+服务趋势的必然产物!
大数据·人工智能·物联网·区块链·生活
leikooo8 小时前
用餐厅和盘子理解栈和堆
java·数据结构·链表·rust
Flynt9 小时前
Redis Cluster主节点挂了,为什么"高可用"还全员掉线?我把三次kill的记录翻出来了
数据库·redis·分布式
Ivanqhz9 小时前
激活函数在 Transformer 中的作用及各种变体简述
java·linux·数据库·人工智能·深度学习
沙漠之主10 小时前
C++编程教学设计资料:从入门到实战的完整课程方案
java·前端·c++
workflower10 小时前
AI system product quality model
大数据·人工智能·机器学习·云计算·无人机
yl453010 小时前
硫酸泄露处理生产商怎么选才够专业
大数据·人工智能·python
FPGA小徐10 小时前
PA1 基础设施(2)深度解析:NEMU 中 ITRACE、MTRACE、FTRACE、IRINGBUF、ETRACE、DIFFTEST 全解析
java·服务器·网络
青柠之夏cc10 小时前
AI与教育:个性化学习助手让“因材施教“成为现实,但代价是隐私?
人工智能·学习
YOLO数据集集合11 小时前
EvoAgent:面向PR研发治理的自进化Multi-Agent Harness系统
java·开发语言·目标检测·agent·自进化