微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 spark 中顺序执行?

如何解决如何在 spark 中顺序执行?

我正在使用 df.map 在每一行上进行转换来迭代数据帧。现在,当我构建我的包时,下面的代码 displayResults 将结果打印为 0,即它不采用每行转换后获得的值。我意识到 displayResults 与 map 方法并行运行。我怎样才能让这个方法调用等待 inputDataFrame.map 方法的完成。谢谢:)

class Obj{
  var total=_
  var avail=_
  def MyMethod(inputDataFrame: DataFrame): Unit={
    val finalvalue=inputDataFrame.map(r=>{
       //apply transformations on row
       total=r.getInt(0)+r.getInt(1)
       avail=helper(r)
    })
    displayResults(total,avail)
  }
  displayResults(total: Int,avail: Int): Unit={
    println("Results "+(avail/total))
  }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。