使用spark 对以下内容进行词频统计 (使用Scala语言)
hello world hello java hello scala hello spark
代码如下:
/** * Spark基于 scala api 的词频统计 */ object WordCount { def main(args: Array[String]): Unit = { // 初始化 SparkConf setMaster:设置运行模式 setAppName: 设置应用名称 val conf = new SparkConf().setMaster("local").setAppName("wordcount") // 初始化 SparkContext 对象 val sc = new SparkContext(conf) // 使用SparkContext对象读取文件 val initRdd = sc.textFile("G:\test\wc\a.txt") // 使用flatMap算子对原始数据进行拆分 val flatmapRdd = initRdd.flatMap(x=>x.split(" ")) // 使用 map算子 转换每个单词 形如 (word,1) val mapRdd = flatmapRdd.map(x=>(x,1)) // 使用 reudecByKey 统计每个单词的出现的次数 val reduceRdd = mapRdd.reduceByKey(_+_) // 输出每个单词和出现次数 reduceRdd.foreach(x=>println(x)) } }