spark 累加 累计次数 累计求和

该博客演示了在Scala中使用Spark进行累加求和的操作。通过创建SparkConf和SparkContext,读取文件并使用map函数遍历RDD,累加计数器i和accumulator。博客强调了accumulator在executor和driver端的使用区别,并提供了自定义累加求和的示例。
摘要由CSDN通过智能技术生成

import org.apache.spark.SparkConf
import org.apache.spark.SparkContext

object Scala {
  def main(args: Array[String]): Unit = {
    /**
     * 累加求和
     */
    val conf=new SparkConf().setAppName("test").setMaster("local")
    val sc=new SparkContext(conf)
    val rdd1=sc.textFile("./words")
    /**
     * 初始化
     * i=0
     * 常量的初始化用var
     */
    var i=0
    rdd1.map(line=>{
      /**
       * 这个i是在executor端去执行的
       * map 是一对一的
       * 是一遍一遍地去处理的
       */
      i+=1
      accumulator.add(1)
      println("Executor execuotr ="+accumulator)
      //在executor端获取值的时候,不能用accumulator.value,而是直接用accumulator获取的,这一点和driver端有区别。
      line
    }).collect()//此处的collect是为了触发执行,没有别的意思
    println(&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值