重命名 Azure Blob 存储中的 csv 文件

Posted

技术标签:

【中文标题】重命名 Azure Blob 存储中的 csv 文件【英文标题】:Renaming a csv file placed in Azure Blob Storage 【发布时间】:2021-10-04 15:31:10 【问题描述】:

我正在使用 Databricks(Pyspark) 在 Azure Blob 存储中写入一个 csv 文件:

file_location = "/mnt/ndemo/nsalman/curation/movies/"
df.repartition(1).write.format("com.databricks.spark.csv").option("header", "true").save(file_location)

创建的文件名为:part-00000-tid-3921235530521294160-fb002878-253d-44f5-a773-7bda908c7178-13-1-c000.csv

现在我将其重命名为“movies.csv”:

filePath = "/mnt/ndemo/nsalman/curation/movies/"
fs.rename(spark._jvm.org.apache.hadoop.fs.Path(filePath+"part*"), spark._jvm.org.apache.hadoop.fs.Path(filePath+"movies.csv"))

运行后它给了我这个输出:

由于我是 Pyspark 的新手,我不确定为什么我的文件没有被重命名?谁能告诉我哪里出错了

【问题讨论】:

【参考方案1】:

试试这个

old_file_name = "test1.csv"
new_file_name = "test2.csv"

dbutils.fs.mv(old_file_name,new_file_name)

为我工作。

【讨论】:

【参考方案2】:

如果要更改文件夹名称,可以使用以下命令,

dbutils.fs.mv("dbfs:/tmp/test", "dbfs:/tmp/test2", recurse=True)

如果要更改单个文件名,

dbutils.fs.mv("dbfs:/mnt/all_tables.txt", "dbfs:/mnt/all_tables.txt_newname")

例子,

【讨论】:

以上是关于重命名 Azure Blob 存储中的 csv 文件的主要内容,如果未能解决你的问题,请参考以下文章

在 Azure Blob 存储中覆盖后如何命名 csv 文件

使用 AspNet 从 Azure Blob 存储下载和重命名文件

使用 python 将 csv 文件上传到 azure blob 存储

将csv数据直接写入节点js中的azure blob

如何使用 Object c# .NET Core 在 blob 存储 Azure 上创建 csv 文件?

如何从 Java 中的 Azure Blob 存储中读取文件夹结构为“dir1 / dir2 / dir3 / 20210301-20210331”的 csv 文件?