Spark是否并行执行UnionAll ?



我得到了10个具有相同模式的DataFrame,我想将它们组合成一个DataFrame。每个DataFrame都是使用sqlContext.sql("select ... from ...").cahce构建的,这意味着从技术上讲,DataFrame s直到使用它们时才真正计算出来。

那么,如果我运行:

val df_final = df1.unionAll(df2).unionAll(df3).unionAll(df4) ...

Spark将计算所有这些DataFrame s并行或一个接一个(由于点运算符)?

而且,当我们在这里时-是否有比我上面列出的更优雅的方法在几个DataFrame上执行unionAll ?

unionAll is lazy。问题中的示例行不会触发任何计算,无论是同步的还是异步的。

总的来说,Spark是一个分布式计算系统。每个操作本身都由一堆并行处理的任务组成。所以一般来说你不用担心两个操作是否可以并行运行。无论如何,集群资源将得到充分利用。

相关内容

  • 没有找到相关文章

最新更新