【问题标题】:Does RDD's .first() method shuffle?RDD 的 .first() 方法是否洗牌?
【发布时间】:2019-07-22 17:52:17
【问题描述】:

想象一下,我们有 small_table 和 big_table,需要这样做:

small_table.join(big_table, "left_outer")

如果我这样做会更快吗:

small_table.map(row => {
   val find = big_table.filter('id === row.id)
   if (find.isEmpty) return Smth(row.id, null)
   return Smth(row.id, find.first().name)
})

【问题讨论】:

    标签: apache-spark apache-spark-sql


    【解决方案1】:

    如果您能够在另一个 RDD 的映射中访问一个 RDD 的数据,则可以在此处运行一些性能测试以查看差异。不幸的是,下面的代码:

     val find = big_table.filter('id === row.id)
    

    不可能,因为这会尝试访问另一个 RDD 中的一个 RDD 的数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-09-08
      • 2015-04-08
      • 2016-01-02
      • 1970-01-01
      • 1970-01-01
      • 2016-11-28
      • 1970-01-01
      相关资源
      最近更新 更多