当前位置: 首页 > news >正文

甘肃购物网站建设太康县城乡建设局规划网站

甘肃购物网站建设,太康县城乡建设局规划网站,商丘网站建设哪家专业,九一果冻制品厂最新电视文章目录 扁平映射算子案例任务1、统计不规则二维列表元素个数方法一、利用Scala来实现方法二、利用Spark RDD来实现 按键归约算子案例任务1、在Spark Shell里计算学生总分任务2、在IDEA里计算学生总分第一种方式#xff1a;读取二元组成绩列表第二种方式#xff1a;读取四元… 文章目录 扁平映射算子案例任务1、统计不规则二维列表元素个数方法一、利用Scala来实现方法二、利用Spark RDD来实现 按键归约算子案例任务1、在Spark Shell里计算学生总分任务2、在IDEA里计算学生总分第一种方式读取二元组成绩列表第二种方式读取四元组成绩列表第三种情况读取HDFS上的成绩文件 扁平映射算子案例 任务1、统计不规则二维列表元素个数 方法一、利用Scala来实现 在net.xxr.rdd.day01包里创建Example02单例对象 package net.xxr.rdd.day01import org.apache.spark.{SparkConf, SparkContext}/*** 功能利用Scala统计不规则二维列表元素个数*/ object Example02 {def main(args: Array[String]): Unit {// 创建不规则二维列表val mat List(List(7, 8, 1, 5),List(10, 4, 9),List(7, 2, 8, 1, 4),List(21, 4, 7, -4))// 输出二维列表println(mat)// 将二维列表扁平化为一维列表val arr mat.flatten// 输出一维列表println(arr)// 输出元素个数println(元素个数 arr.size)} } 方法二、利用Spark RDD来实现 在net.xxr.rdd.day01包里创建Example03单例对象 package net.xxr.rdd.day01import org.apache.spark.{SparkConf, SparkContext}/*** 功能利用RDD统计不规则二维列表元素个数*/ object Example03 {def main(args: Array[String]): Unit {// 创建Spark配置对象val conf new SparkConf().setAppName(PrintDiamond) // 设置应用名称.setMaster(local[*]) // 设置主节点位置本地调试// 基于Spark配置对象创建Spark容器val sc new SparkContext(conf)// 创建不规则二维列表val mat List(List(7, 8, 1, 5),List(10, 4, 9),List(7, 2, 8, 1, 4),List(21, 4, 7, -4))// 基于二维列表创建rdd1val rdd1 sc.makeRDD(mat)// 输出rdd1rdd1.collect.foreach(x print(x ))println()// 进行扁平化映射val rdd2 rdd1.flatMap(x x.toString.substring(5, x.toString.length - 1).split(, ))// 输出rdd2rdd2.collect.foreach(x print(x ))println()// 输出元素个数println(元素个数 rdd2.count)} } 扁平化映射可以简化 按键归约算子案例 任务1、在Spark Shell里计算学生总分 创建成绩列表scores基于成绩列表创建rdd1对rdd1按键归约得到rdd2然后查看rdd2内容 val scores List((“张钦林”, 78), (“张钦林”, 90), (“张钦林”, 76), (“陈燕文”, 95), (“陈燕文”, 88), (“陈燕文”, 98), (“卢志刚”, 78), (“卢志刚”, 80), (“卢志刚”, 60)) val rdd1 sc.makeRDD(scores) val rdd2 rdd1.reduceByKey((agg, cur) agg cur) rdd2.collect.foreach(println) 可以采用神奇的占位符 任务2、在IDEA里计算学生总分 第一种方式读取二元组成绩列表 在net.xxr.rdd.day02包里创建CalculateScoreSum01单例对象 package net.xxr.rdd.day02import org.apache.spark.{SparkConf, SparkContext}/*** 功能计算总分*/ object CalculateScoreSum01 {def main(args: Array[String]): Unit {// 创建Spark配置对象val conf new SparkConf().setAppName(PrintDiamond) // 设置应用名称.setMaster(local[*]) // 设置主节点位置本地调试// 基于Spark配置对象创建Spark容器val sc new SparkContext(conf)val scores List((张钦林, 78), (张钦林, 90), (张钦林, 76),(陈燕文, 95), (陈燕文, 88), (陈燕文, 98),(卢志刚, 78), (卢志刚, 80), (卢志刚, 60))// 基于二元组成绩列表创建RDDval rdd1 sc.makeRDD(scores)// 对成绩RDD进行按键归约处理val rdd2 rdd1.reduceByKey(_ _)// 输出归约处理结果rdd2.collect.foreach(println)} } 第二种方式读取四元组成绩列表 在net.xxr.rdd.day02包里创建CalculateScoreSum02单例对象 package net.xxr.rdd.day02import org.apache.spark.{SparkConf, SparkContext}import scala.collection.mutable.ListBuffer/*** 功能计算总分*/ object CalculateScoreSum02 {def main(args: Array[String]): Unit {// 创建Spark配置对象val conf new SparkConf().setAppName(PrintDiamond) // 设置应用名称.setMaster(local[*]) // 设置主节点位置本地调试// 基于Spark配置对象创建Spark容器val sc new SparkContext(conf)// 创建四元组成绩列表val scores List((张钦林, 78, 90, 76),(陈燕文, 95, 88, 98),(卢志刚, 78, 80, 60))// 将四元组成绩列表转化成二元组成绩列表val newScores new ListBuffer[(String, Int)]()// 通过遍历算子遍历四元组成绩列表scores.foreach(score {newScores.append(Tuple2(score._1, score._2))newScores.append(Tuple2(score._1, score._3))newScores.append(Tuple2(score._1, score._4))})// 基于二元组成绩列表创建RDDval rdd1 sc.makeRDD(newScores)// 对成绩RDD进行按键归约处理val rdd2 rdd1.reduceByKey(_ _)// 输出归约处理结果rdd2.collect.foreach(println)} } 第三种情况读取HDFS上的成绩文件 将成绩文件上传到HDFS的/input目录 hdfs dfs -mkdir /input hdfs dfs -put scores.txt /input hdfs dfs -cat /input/scores.txt 在net.xxr.rdd.day02包里创建CalculateScoreSum03单例对象 package net.xxr.rdd.day02import org.apache.spark.{SparkConf, SparkContext}import scala.collection.mutable.ListBuffer/*** 功能计算总分*/ object CalculateScoreSum03 {def main(args: Array[String]): Unit {// 创建Spark配置对象val conf new SparkConf().setAppName(CalculateScoreSum).setMaster(local[*])// 基于配置创建Spark上下文val sc new SparkContext(conf)// 读取成绩文件生成RDDval lines sc.textFile(hdfs://master:9000/input/scores.txt)// 定义二元组成绩列表val scores new ListBuffer[(String, Int)]()// 遍历lines填充二元组成绩列表lines.collect.foreach(line {val fields line.split( )scores Tuple2(fields(0), fields(1).toInt)scores Tuple2(fields(0), fields(2).toInt)scores Tuple2(fields(0), fields(3).toInt)})// 基于二元组成绩列表创建RDDval rdd1 sc.makeRDD(scores)// 对成绩RDD进行按键归约处理val rdd2 rdd1.reduceByKey((x, y) x y)// 输出归约处理结果rdd2.collect.foreach(println)} } 在Spark Shell里完成同样的任务 import scala.collection.mutable.ListBuffer val lines sc.textFile(hdfs://master:9000/input/scores.txt) val scores new ListBuffer[(String, Int)]() lines.collect.foreach(line { val fields line.split( ) scores.append(Tuple2(fields(0), fields(1).toInt)) scores.append(Tuple2(fields(0), fields(2).toInt)) scores.append(Tuple2(fields(0), fields(3).toInt)) }) val rdd1 sc.makeRDD(scores) val rdd2 rdd1.reduceByKey(_ _) rdd2.collect.foreach(println) 修改程序将计算结果写入HDFS文件
http://www.dnsts.com.cn/news/238804.html

相关文章:

  • 重庆网站推广工具宠物食品 中企动力提供网站建设
  • 两学一做教育纪实评价系统网站网站建设的关键问题
  • 网站策划论坛平台推广方式有哪些
  • 网站轮播图济南代做标书网站标志
  • net 网站开发泉州网站建设公司
  • 兰州医院网站制作企业+php网站建设
  • 商城网站合作协议微营销是什么
  • 网站服务器服务商软件开发项目技术方案
  • 高端网站建设专家评价吴忠市住房和城乡建设局网站
  • 有哪里可以做兼职翻译的网站wordpress 时间函数
  • 外贸定制网站闸北网站优化公司
  • 网站后台管理权限设计设计基础网站推荐
  • 汉中公司做网站公司网站后台
  • 余姚厂家高端网站设计免费咨询英文
  • 如何查询某个网站的设计公司虚拟网站建设
  • 自己做的网站别人打不开牟平建设局网站北留德庄
  • 网址关键词查询网站新建网站注意事项
  • 朝阳区网站建设公司施工企业降本增效的方法和措施
  • 河北城乡建设部网站首页深圳公司排名前十名
  • 学校门户网站建设管理办法建设设计公司网站
  • html5微网站济南市建设网站
  • 建站素材wordpress周期
  • 网站的登录注册怎么做网页游戏网页游戏大全
  • 网站建设费用兴田德润团队域名所有人是网站名不能转出
  • 网站架设流程牟平建设局网站北留德庄
  • 网站建设wang1314雅安市建设网站
  • seo做网站兰州最新大事
  • 网站浮动广告代码wordpress手机端网站
  • 做网站是用ps还是ai关于网站开发制作的相关科技杂志的网站
  • 保险代理人做网站南通网站建设推广专家