Spark03中广播变量和累加器的代码怎么写

今天就跟大家聊聊有关Spark03中广播变量和累加器的代码怎么写,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

广播变量scala代码

  def main(args: Array[String]): Unit = {
    val conf = new SparkConf()
    conf.setMaster("local")
    conf.setAppName("Spark07")
    val sc = new SparkContext(conf)
    //累加器在Driver端定义赋初始值,累加器只能在Driver端读取,在driver、Excutor端更新,
    var sum = sc.accumulator(0)
    val rdd: RDD[String] = sc.textFile("G:/idea/scala/spark02/words1")
    sum.add(1)
    val result: RDD[String] = rdd.map(index=>{
      println("sum="+sum)
      sum.add(1)
      println(sum)
      index
    })
    result.foreach(println)
    println(sum)
  }

累加器scala代码

  def main(args: Array[String]): Unit = {
    val conf = new SparkConf()
    conf.setMaster("local")
    conf.setAppName("Spark07")
    val sc = new SparkContext(conf)
    //累加器在Driver端定义赋初始值,累加器只能在Driver端读取,在driver、Excutor端更新,
    var sum = sc.accumulator(0)
    val rdd: RDD[String] = sc.textFile("G:/idea/scala/spark02/words1")
    sum.add(1)
    val result: RDD[String] = rdd.map(index=>{
      println("sum="+sum)
      sum.add(1)
      println(sum)
      index
    })
    result.foreach(println)
    println(sum)
  }

看完上述内容,你们对Spark03中广播变量和累加器的代码怎么写有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。