编写独立应用程序实现求平均值问题 | 您所在的位置:网站首页 › 求出200∽300的素数平均值 › 编写独立应用程序实现求平均值问题 |
目录 编写独立应用程序实现求平均值问题 条件 Algorithm成绩的样例如下: Database成绩的样例如下: Python成绩的样例如下: 平均成绩的样例如下: 准备工作 题目 (1)假设当前目录为/usr/local/spark/mycode/AvgScore,在当前目录下新建一个目录src/main/scala,然后在目 录/usr/local/spark/mycode/AvgScore/src/main/scala 下新建一个AvgScore.scala。复制如下代码: (2)在/usr/local/spark/mycode/AvgScore目录下新建simple.sbt,复制如下代码: (3)在/usr/local/spark/mycode/AvgScore目录下执行如下命令打包程序: (4)在/usr/local/spark/mycode/AvgScore 目录下执行如下命令提交程序: (5)在/usr/local/spark/mycode/AvgScore/result 目录下即可得到结果文件。 补充: 编写独立应用程序实现求平均值问题 条件每个输入文件表示班级学生某个学科的成绩,每行内容由两个字段组成,第一个是学生名字,第二个是学生的成绩;编写Spark独立应用程序求出所有学生的平均成绩,并输出到一个新文件中。下面是输入文件和输出文件的一个样例供参考。 Algorithm成绩的样例如下: 小明92小红87小新82小丽90 Database成绩的样例如下: 小明95小红81小新89小丽85 Python成绩的样例如下: 小明83小红82小新94小丽91 平均成绩的样例如下: 小明89.67小红83.67小新88.33小丽88.67 准备工作1.进入到mycode目录,新建RemDup目录(没有mycode目录可以新建一个) 再进入到RemDup目录中去 2.新建datas目录,写入文件algorithm、database、python: 写入文件: 文件内容为: ↑这个内容很好看,但是很愚蠢,不知道的话这里错误会浪费几个小时(肯定不是我) 注意这里 algorithm、database 和 python 文件内容不能有多余的换行符或者空格! 所以内容复制粘贴以下内容 : Algorithm 小明 92 小红 87 小新 82 小丽 90Database 小明 95 小红 81 小新 89 小丽 85Python 小明 82 小红 83 小新 94 小丽 91 题目书上是 avgscore ->AvgScore (1)假设当前目录为/usr/local/spark/mycode/AvgScore,在当前目录下新建一个目录src/main/scala,然后在目 录/usr/local/spark/mycode/AvgScore/src/main/scala 下新建一个AvgScore.scala。复制如下代码://书上的源码 import org.apache.spark.SparkContext import org.apache.spark.SparkContext._ import org.apache.spark.SparkConf import org.apache.spark.HashPartitioner object AvgScore { def main(args: Array[String]) { val conf = new SparkConf().setAppName("AvgScore") val sc = new SparkContext(conf) val dataFile = "file:///home/hadoop/data" val data = sc.textFile(dataFile,3) val res = data.filter(_.trim().length>0).map(line=>(line.split(" ")(0).trim(),line.split(" ")(1).trim().toInt)).partitionBy(new HashPartitioner(1)).groupByKey().map(x => { var n = 0 var sum = 0.0 for(i |
CopyRight 2018-2019 实验室设备网 版权所有 |