在这里 我们先简易的看一下一个本地运行的单词计数统计
- 这里不用多说 创建一个简单的maven项目,大致就是下面的图片

-
编写一个本地的技术统计
object SingleCount { def main(args: Array[String]): Unit = { //1.执行入口 //2.创建sparkConf对象 设置appname和master地址 val conf:SparkConf = new SparkConf().setAppName("LocalSingleCount").setMaster("local[2]") //3.创建SparkConf对象 val context:SparkContext=new SparkContext(conf) //4.读取文件数据文件 val dataRDD:RDD[String]=context.textFile("D:\\1.txt") //5.切分文件中的每一行 返回文件所有单词 val wordsRDD : RDD[String] =dataRDD.flatMap(_.split(" ")) //返回元组(单词,1) val wordsRDDAndOneRDD :RDD[(String,Int)] =wordsRDD.map((_,1)) //6. 相同的单词次数累加 出现相同单词次数降序排列 val resultRDD:RDD[(String,Int)]=wordsRDDAndOneRDD.reduceByKey(_+_) val sortResultRDD:RDD[(String,Int)] = resultRDD.sortBy(_._2,false) //7.收集结果数据 val tuples: Array[(String,Int)] =sortResultRDD.coll

本文介绍了如何在本地和Linux集群环境下使用Spark进行单词计数统计。首先创建了一个简单的Maven项目实现本地统计,并展示了测试结果。接着,将项目打包成jar,上传到集群并使用`spark-submit`命令运行。在集群中运行时需要注意配置环境变量和指定输出路径。最后,通过HDFS查看并下载了集群运行的结果,集群版的关键在于正确编写`spark-submit`命令,避免小错误。
最低0.47元/天 解锁文章
493

被折叠的 条评论
为什么被折叠?



