web-dev-qa-db-ja.com

Spark DataFrameクラスのunion()メソッドはどこにありますか?

Java Connector for Sparkを使用していて、2つのDataFrameを結合したいのですが、奇妙なことに、DataFrameクラスはunionAllしか持っていませんか?これは意図的であり、方法はありますか?を使わずに2つのデータフレームを結合するには

7
Milen Kovachev

これは意図的ですか

意図的であると考えるのが安全だと思う場合。 RDD.unionDataSet.unionなどの他の共用体演算子も重複を保持します。

あなたがそれについて考えるなら、理にかなっています。 UNION ALLと同等の操作は、データアクセスやネットワークトラフィックを必要としない単なる論理操作ですが、個別の要素を見つけるにはシャッフルが必要であり、そのために非常にコストがかかる可能性があります。

重複せずに2つのデータフレームを結合する方法はありますか?

df1.unionAll(df2).distinct()
18
zero323