Azure Databricks使用dbutils.fs.mv移动文件报错:Server-side copy失败
解决Azure Databricks中
dbutils.fs.mv服务器端复制失败的问题 临时禁用服务器端复制(会话级别)
在执行移动命令前,先运行以下代码关闭服务器端复制功能:
spark.conf.set("databricks.spark.dbutils.fs.cp.server-side.enabled", "false")
之后重新执行你的移动命令:
dbutils.fs.mv("file:/tmp/seasons.csv", "dbfs:/tmp/seasons.csv")
永久禁用(集群级别,可选)
如果后续频繁遇到该问题,可在集群的Spark配置中添加以下参数,无需每次会话重复设置:
- 配置键:
databricks.spark.dbutils.fs.cp.server-side.enabled - 配置值:
false
保存配置后重启集群即可生效。
替代方案:手动模拟移动操作
若禁用服务器端复制后仍有异常,可拆分操作步骤:先复制文件到DBFS,再删除驱动端本地文件:
# 复制文件到DBFS dbutils.fs.cp("file:/tmp/seasons.csv", "dbfs:/tmp/seasons.csv") # 删除驱动端本地文件 import os os.remove("/tmp/seasons.csv")
内容的提问来源于stack exchange,提问作者user3060571
相关产品推荐
相关产品推荐

