You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Databricks使用dbutils.fs.rm删除DBFS文件后能否恢复?

DBFS误删文件恢复可行方案

dbutils.fs.rm 命令本身没有内置回收站功能,删除后无法直接通过Databricks原生命令一键恢复,需结合你的DBFS存储部署情况选择对应方案:

方案1:云存储侧恢复(适用绝大多数生产环境)

DBFS本质是云对象存储的抽象层,你删除的路径属于默认DBFS根目录下的FileStore,对应的底层就是你Databricks工作空间绑定的云厂商对象存储:

  • 如果你提前开启了云存储的版本控制功能:直接在对应云存储控制台找到该路径对应的文件,恢复到删除前的版本即可,文件内容和路径完全不变,不需要修改现有脚本
  • 如果你开启了云存储的回收站/软删除功能:在回收站中找到被删除的文件,执行还原操作即可,路径和内容不会发生变更

方案2:文件历史版本恢复(仅适用该SQL文件曾通过Databricks UI上传/编辑过的情况)

如果该.sql文件是你之前通过Databricks工作区UI上传到FileStore,或者曾在Notebook中直接编辑保存过该文件:
你可以在工作区的用户操作历史中找到对应文件的上传/编辑记录,重新下载原始文件后,用dbutils.fs.put命令原样写入到原路径即可:

# 替换为你找到的原始sql文件完整内容,写入后路径完全匹配原有路径
sql_content = "原始SQL文件的完整文本内容"
dbutils.fs.put("dbfs:/FileStore/tables/sql/global_franchise/liverpool/location/store_hierarchy/franchise_store_hierarchy_merge_into_ndp.sql", sql_content, overwrite=True)

方案3:运行历史回溯恢复(仅适用该SQL文件曾被作业调用执行过的情况)

如果该SQL文件之前曾被Databricks作业、Notebook调用运行过,你可以找到删除前成功运行的对应作业/Notebook运行记录:

  • 若运行日志中打印过完整的SQL内容,直接提取日志中的SQL文本,按方案2的方式写入原路径即可
  • 若你有CI/CD流程部署该SQL文件,直接重新执行对应部署流程,将文件重新推送到原DBFS路径即可

注意:如果以上条件都不满足(既没有开云存储版本控制/回收站,也没有保留文件的历史备份、运行记录),则被删除的文件无法恢复。

内容的提问来源于stack exchange,提问作者BetaNumero2222

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 14:27:03