Spark Shell 实现 Word Count
Posted 山间一棵松
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spark Shell 实现 Word Count相关的知识,希望对你有一定的参考价值。
0. 说明
在 Spark Shell 实现 Word Count
RDD (Resilient Distributed dataset), 弹性分布式数据集。
示意图
1. 实现
1.1 分步实现
# step 1 加载文档 val rdd1 = sc.textFile("file:///home/centos/wc1.txt") # step 2 压扁 val rdd2 = rdd1.flatMap(line=>{line.split(" ")}) # step 3 标1成对 val rdd3 = rdd2.map(word=>{(word , 1)}) # step 4 聚合 val rdd4 = rdd3.reduceByKey((a:Int,b:Int)=>{a + b}) # step 5 rdd4.collect()
1.2 一步完成 (reduceByKey)
sc.textFile("file:///home/centos/wc1.txt").flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).collect()
1.3 一步完成 (groupByKey)
sc.textFile("file:///home/centos/wc1.txt").flatMap(_.split(" ")).map((_,1)).groupByKey().mapValues(_.size).collect()
以上是关于Spark Shell 实现 Word Count的主要内容,如果未能解决你的问题,请参考以下文章