linux中用spark进行单词数统计--wordCount例子操作详解【scala版】

这是命令行的简单操作案例,借用spark里面的API:flatMap、reduceByKey来实现,步骤如下:
1)启动spark shell:

./spark-shell --master local[2]

注:spark shell 是spark自带的一个快速开发工具,在spark目录下bin目录里面

2)读入需要处理的单词文件

val file = sc.textFile("file:///home/hadoop/data/hello.txt")

3)将文件中的每一行单词按照分隔符(这里是空格)分隔

val a = file.flatMap(line => line.split(" "))

4)给每个单词计数为1

val b = a.map(word => (word,1))

或者:val b = a.map((_,1))
5)统计相同单词的数量

val c = b.reduceByKey(_ + _)

或者:val c = b.reduceByKey((A,B)=>(A+B))

合并成一行代码

sc.textFile("file:///home/hadoop/data/hello.txt").flatMap(line => line.split(" ")).map(word => (word,1)) .reduceByKey(_ + _).collect

谢谢

猜你喜欢

转载自blog.csdn.net/yulutian/article/details/80300189
今日推荐