如何将多份Notebook从当前环境迁移至新的UC启用环境?
批量迁移Notebook到UC启用环境的方案
方案一:用Databricks CLI 批量导出/导入(保留目录结构)
- 配置CLI双环境认证
安装Databricks CLI后,分别配置源环境和目标UC环境的profile,方便切换操作:databricks configure --profile source-env databricks configure --profile uc-target-env - 递归导出源目录
用export_dir命令一次性导出整个文件夹,自动保留层级结构到本地:databricks workspace export_dir /source/workspace/folder ./local-backup --profile source-env - 递归导入到UC环境
UC环境的路径通常为/Workspace/Users/[你的邮箱]/[目标目录],用import_dir命令将本地备份的目录结构完整迁移过去:databricks workspace import_dir ./local-backup /Workspace/Users/your-email@domain.com/target-folder --profile uc-target-env --overwrite
方案二:编写API脚本实现自定义批量迁移
如果需要过滤特定类型Notebook、批量调整路径,可通过Databricks API写脚本处理:
- 调用源环境
workspace/list接口,递归获取目标文件夹下所有目录和Notebook的路径 - 遍历目录列表,先在UC环境调用
workspace/mkdirs创建对应层级目录 - 遍历Notebook列表,调用
workspace/export获取内容,再用workspace/import上传到UC环境的对应路径
方案三:通过Git Repos同步(适用于已托管Git的Notebook)
如果源环境的Notebook已经关联Git仓库,直接在UC环境创建Repos,绑定同一个Git仓库,拉取代码后会自动保留原有目录结构,适合需要长期同步维护的Notebook集合。
关键注意事项
- 确认UC环境权限:确保目标路径拥有创建目录、上传Notebook的权限
- 检查命名合规性:UC环境对文件名/目录名有字符限制,迁移前排查并调整特殊字符
- 先做小范围测试:迁移单个子目录验证结构完整性后,再执行批量操作
内容的提问来源于stack exchange,提问作者bharath kumar
相关产品推荐
相关产品推荐

