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

庆阳做网站的公司vps搭建网站教程

庆阳做网站的公司,vps搭建网站教程,小红书网络营销方式,南宁企业建站系统模板Spark累加器 累加器用来把Executor端变量信息聚合到Driver端#xff0c;在driver程序中定义的变量#xff0c;在Executor端的每个task都会得到这个变量的一份新的副本#xff0c;每个task更新这些副本的值后#xff0c;传回driver端进行merge。 累加器一般是放在行动算子…Spark累加器 累加器用来把Executor端变量信息聚合到Driver端在driver程序中定义的变量在Executor端的每个task都会得到这个变量的一份新的副本每个task更新这些副本的值后传回driver端进行merge。 累加器一般是放在行动算子中进行操作的。 Spark累加器有哪些特点 1累加器在全局唯一的只增不减记录全局集群的唯一状态 2在Executor中修改它在Driver读取 3executor级别共享的广播变量是task级别的共享两个application不可以共享累加器但是同一个app不同的job可以共享 应用举例 不经过Shuffle实现词频统计 object Spark06_Accumulator {def main(args: Array[String]): Unit {val conf: SparkConf new SparkConf().setAppName(this.getClass.getName).setMaster(local[*])val sc new SparkContext(conf)val rdd: RDD[(String, Int)] sc.makeRDD(List((a, 1), (b, 2), (a, 3), (b, 4)))// 声明累加器val sumAcc: LongAccumulator sc.longAccumulator(sumAcc)rdd.foreach {case (word, count) {// 使用累加器sumAcc.add(count)}}// 累加器的toString方法//println(sumAcc)//取出累加器中的值println(sumAcc.value)sc.stop()} }不经过shuffle计算以H开头的单词出现的次数。 object Spark07_MyAccumulator {def main(args: Array[String]): Unit {val conf: SparkConf new SparkConf().setAppName(this.getClass.getName).setMaster(local[*])val sc new SparkContext(conf)val rdd: RDD[String] sc.makeRDD(List(Hello, HaHa, spark, scala, Hi, Hello, Hi))// 创建累加器val myAcc new MyAccumulator//注册累加器sc.register(myAcc, MyAcc)rdd.foreach{datas {// 使用累加器myAcc.add(datas)}}// 获取累加器的结果println(myAcc.value)sc.stop()} }// 自定义累加器 // 泛型分别为输入类型和输出类型 class MyAccumulator extends AccumulatorV2[String, mutable.Map[String, Int]] {// 定义输出数据变量var map: mutable.Map[String, Int] mutable.Map[String, Int]()// 累加器是否为初始状态override def isZero: Boolean map.isEmpty// 复制累加器override def copy(): AccumulatorV2[String, mutable.Map[String, Int]] {val MyAcc new MyAccumulator// 将此累加器中的数据赋值给新创建的累加器MyAcc.map this.mapMyAcc}// 重置累加器override def reset(): Unit {map.clear()}// 累加器添加元素override def add(v: String): Unit {if (v.startsWith(H)) {// 判断map集合中是否已经存在此元素map(v) map.getOrElse(v, 0) 1}}// 合并累加器中的元素override def merge(other: AccumulatorV2[String, mutable.Map[String, Int]]): Unit {val map1: mutable.Map[String, Int] this.mapval map2: mutable.Map[String, Int] other.value// 合并两个mapmap map1.foldLeft(map2) {(m, kv) {m(kv._1) m.getOrElse(kv._1, 0) kv._2m}}}// 获取累加器中的值override def value: mutable.Map[String, Int] {map} }参考Spark累加器的作用和使用-CSDN博客
http://www.zqtcl.cn/news/866018/

相关文章:

  • 临沂制作网站企业施工企业汛期工作实施方案
  • 82家合法现货交易所名单永康关键词优化
  • 郑州市建设工程造价信息网站浙江省建设工程质量管理协会网站
  • 乌兰浩特市建设局网站永州微网站建设
  • 做网站的用什么电脑好wordpress首页调用指定分类
  • 网站域名申请好了怎么建设网站室内设计培训班哪个学校好
  • 东莞厚街网站建设网页设计代码字号px
  • 网站建站免费淘宝优惠券网站建设总代
  • 茶叶网站设计建设工程监理招标网站
  • 网站建设发展历程做网站要多少钱 知乎
  • 丽江建设信息网站江门网站制作方案
  • 网站名注册移动端应用开发
  • 本地网站搭建流程短链接生成器app
  • 建网站需要哪些技术代做ppt网站
  • 在上海哪个网站比较好网站建设服务方案ppt模板
  • 天津网站优化流程uniapp微信小程序模板
  • 网站 搜索引擎 提交企业网站必须备案
  • 公司网站主页设计深圳搜索引擎
  • 织梦学校网站中国建设银行官方网站诚聘英才频道
  • 织梦网站去除技术支持网站建设热门吗
  • 手机自助网站建设电商首页设计
  • 个人做电影网站违法吗招标网站哪个好
  • 岱山县网站建设旅游网站制作
  • 深圳建网站三千哪些网站可以做微商品牌宣传
  • 做网站哪些软件比较好个人网站备案幕布
  • 用数据库代码做家乡网站专门做二维码的网站
  • 上海网站开发工程师招聘网网络维护公司需要什么资质
  • 迅速百度网站自然排名wordpress注册密码链接失效
  • 北京安慧桥网站建设金泉网做网站推广
  • 网站建设与管理书威海城乡与住房建设部网站