pyspark 数据砖保存框架而不创建子文件夹

mum43rcc  于 2023-10-15  发布在  Spark
关注(0)|答案(2)|浏览(118)

我正尝试使用以下代码在Databricks中保存一个框架:

df.write.format("delta").save("abfss://my_container@my_storage.dfs.core.windows.net/my_path/filename.snappy.parquet")

但这会创建额外的子文件夹filename.snappy.parquet,因此文件存储为my_path/filename.snappy.parquet/filename.snappy.parquet,而不是所需的my_path/filename.snappy.parquet
如何保存它没有这个额外的不需要的子文件夹?

q3qa4bjr

q3qa4bjr1#

Spark writes将数据放到文件夹中,.save中提到的路径是spark创建的文件夹名称。

  • 在文件夹中有spark创建的part文件。

如果你想用specific name创建文件,那么我们需要在spark作业写入数据后将文件重命名为post进程(使用dbutils.fs.mv)。

dbutils.fs.mv("my_path/<file_name>", "my_path/filename.snappy.parquet/filename.snappy.parquet")
j2datikz

j2datikz2#

而不是

df.write.format("delta").save("abfss://my_container@my_storage.dfs.core.windows.net/my_path/filename.snappy.parquet")

指定

df.write.format("delta").save("abfss://my_container@my_storage.dfs.core.windows.net/my_path/")

它将自动在my_path下创建零件文件

相关问题