Mac下使用Spark-shell实现WorldCount

来源:互联网 发布:网络延迟怎么解决 编辑:程序博客网 时间:2024/06/05 01:09

记录一下用spark自带的例子跑Worldcount项目(注:mac下运行会省略hdfs读取文件的步骤,若在linux下运行请先用hdfs读取本地文件再进行操作)

开启hadoop

#进入hadoop所在文件夹下sbin/start-all.sh

使用jps查看情况,确认namenode和datanode都开启成功

jps

这里写图片描述

开启spark-shell

#进入spark文件夹下bin/spark-shell

这里写图片描述

读取要计数的文件

val file = sc.textFile("/example.txt")

通过” “将单词分开,并通过map和reduce进行分类计数

val counts = file.flatMap(line=>line.split(" ")).map(word=>(word,1)).recudeByKey(_+_)

将计数结果保存在文档中

counts.saveAsTextFile("/spark-output")

查看计数过程和结果

counts.count()counts.foreach(println)

这里写图片描述

可以进入对应路径查看文件,这里我们看到文件夹下有三个文件

_SUCCESS
part-00000
part-00001

这里写图片描述

文件里为对应的单词及计数结果:
这里写图片描述

0 0
原创粉丝点击