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();

    }
}

运行结果为:

相关推荐
逆境不可逃14 分钟前
Pi Agent 学习笔记:不同模型如何接入同一套工具循环
笔记·学习
敲代码的嘎仔17 分钟前
用 Redis 合并写 + DelayQueue 延迟检测,把视频播放进度写库频率降到 1/60
java·开发语言·数据库·redis·缓存·音视频·高并发
词却29 分钟前
OpenCV学习:dlib 人脸检测
人工智能·opencv·学习
Q264336502334 分钟前
【有源码】基于机器学习的电信网络诈骗话术语义识别与可视化分析系统 XGBoost算法+Hadoop+Spark
大数据·hadoop·算法·机器学习·spark·毕业设计·课程设计
爱吃苹果的日记本34 分钟前
数据结构第三课补充(空间复杂度)
数据结构·学习
PC2005-cloud1 小时前
Rust学习笔记:所有权、借用与生命周期——Rust的核心机制
笔记·学习·rust
千里码aicood1 小时前
面向电商冷启动与数据稀疏性的协同过滤算法优化研究
大数据·算法·协同过滤
youyou-06061 小时前
AUTOSAR‑COM 常见问题 QA (1)
java·linux·服务器·单片机·汽车
谢亮_vipxieliang1 小时前
ValidX时间段验证详解:ISO 8601标准与简化格式
java·spring boot·后端·spring·spring cloud·hibernate
Lsetea1 小时前
Java 请求 HTTPS 报 PKIX path building failed:从证书链到 truststore 的完整排查
java·https·ssl证书·keytool·truststore