Pyspark 使用附加写入模式将新数据写入现有拼花地板文件

Pyspark 使用附加写入模式将新数据写入现有拼花地板文件,pyspark,Pyspark,我正在使用下面的代码片段来保存数据。它只在同一分区文件夹下创建一个新的拼花地板文件。是否有任何方法可以将数据真正附加到现有的拼花地板文件中。如果一天中有很多附件,我们就不会有多个文件了 df.coalesce(1).write.mode('append').partitionBy(“paritionKey”).parquet(“…\parquet\u file\u folder\”) 非常感谢您的帮助。从这里查看答案: “在Spark中追加意味着写入现有目录,而不是追加到文件 这是有意的和期望的

我正在使用下面的代码片段来保存数据。它只在同一分区文件夹下创建一个新的拼花地板文件。是否有任何方法可以将数据真正附加到现有的拼花地板文件中。如果一天中有很多附件,我们就不会有多个文件了

df.coalesce(1).write.mode('append').partitionBy(“paritionKey”).parquet(“…\parquet\u file\u folder\”)


非常感谢您的帮助。

从这里查看答案:

“在Spark中追加意味着写入现有目录,而不是追加到文件

<>这是有意的和期望的行为(想想即使在格式和文件系统允许的情况下,如果在“追加”过程中失败,会发生什么情况?


如有必要,合并文件等操作应通过单独的流程应用,以确保正确性和容错性。不幸的是,这需要一份完整的副本,由于明显的原因,在批对批的基础上不需要该副本。”

请参见此处的答案:

“在Spark中追加意味着写入现有目录,而不是追加到文件

<>这是有意的和期望的行为(想想即使在格式和文件系统允许的情况下,如果在“追加”过程中失败,会发生什么情况?

如有必要,合并文件等操作应通过单独的流程应用,以确保正确性和容错性。不幸的是,这需要完整的副本,但由于明显的原因,不需要逐批进行。”