【问题标题】:How to join two parquet datasets?如何加入两个镶木地板数据集?
【发布时间】:2017-04-19 12:32:45
【问题描述】:

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

【问题讨论】:

  • 在 sparkSQL 中可以使用典型的连接操作,例如join,union。等等。
  • 你想要什么输出只需加入两个数据集或其他任何东西

标签: java apache-spark apache-spark-sql apache-spark-dataset


【解决方案1】:

这几乎就像 Spark SQL 是为给定 parquet 设计的一样是默认格式。

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

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

加入 Spark SQL 也是一件轻而易举的事(并且隐藏了您是否处理 parquet 数据集或其他任何内容)。使用join 运算符。

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

这样,保存到数据存储中,比如一个大的(ger)镶木地板文件又是一件轻而易举的事。

joined.write.save(...)

你已经完成了。恭喜!

请阅读Spark SQLDataset API

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-26
    • 2018-07-09
    • 1970-01-01
    • 2021-03-15
    • 1970-01-01
    • 2020-11-07
    • 2017-12-30
    • 2017-08-04
    相关资源
    最近更新 更多