如何连接两个镶木地板数据集?

How to join two parquet datasets?

我正在使用 Java 从 Spark 中的 Parquet 文件加载两个数据集。我需要创建一个新的作为两者的组合。在常规 SQL 中,我会加入表,应用一些 where 条件并创建一个新表。有什么办法可以在 Spark (SQL) 中实现这一点?我读到 RDD 是可行的,但我真的不想将数据写回磁盘。

这几乎就像是 Spark SQL 专为给定镶木地板而设计的默认格式。

读取 parquet 文件很简单,看起来像:

val fileOne = spark.read.load(...)
val fileTwo = spark.read.load(...)

加入 Spark SQL 也很容易(并且隐藏您是否处理镶木地板数据集或其他任何东西)。使用 join 运算符。

val joined = fileOne.join(fileTwo).where(...)

有了这个,保存到数据存储,比如一个大的(ger)镶木地板文件又是一件很容易的事。

joined.write.save(...)

大功告成。恭喜!

请继续阅读 Spark SQL and Dataset API