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

跨账号迁移时如何清理Azure Databricks工作区

Azure Databricks跨账号迁移工作区标准化清理流程

以下流程适配跨账号迁移时全量刷新notebooks、用户/用户组、集群、数据库及表的场景,全程操作优先在目标工作区执行,源工作区全程保持只读状态做兜底。

前置准备

  • 提前申请目标工作区临时全局管理员权限,同时给源工作区账号配置只读权限,避免迁移过程中误改源端资产
  • 导出源端全量资产清单做基准:
    • 用Databricks CLI执行databricks workspace export_dir / ./source_workspace_backup -o导出全量notebook
    • 执行databricks groups list、databricks users list导出用户、用户组配置
    • 执行databricks clusters list、databricks jobs list导出集群、作业配置
    • 遍历所有库执行SHOW DATABASES、SHOW TABLES IN <库名>导出全量表清单,统一存档
  • 关停目标工作区所有运行中资源:执行databricks clusters list --state RUNNING、databricks jobs list --state RUNNING拿到运行中的集群、作业后逐一终止,避免清理过程中有任务写入脏数据。

分模块清理操作

身份体系(用户、用户组、服务主体)清理

  • 保留平台默认的admins、users内置用户组,删除所有自定义创建的用户组;清空内置组内除当前迁移操作管理员之外的所有成员
  • 对比源端导出的身份清单,删除目标侧存在但源端不存在的冗余用户、服务主体,注意不要误删当前操作的管理员账号
  • 清理完成后先导入源端用户组配置,再将对应用户、服务主体绑定到组,顺序不要反,避免权限映射错乱。

计算资源(集群、SQL仓库、集群策略)清理

  • 删除目标侧所有用户自建的通用集群、作业关联集群、SQL仓库,避免旧配置和后续导入的源端资源重名、参数冲突
  • 删除所有非平台默认的自定义集群策略、全局初始化脚本,同时清理工作区存储中残留的旧版自定义依赖包、初始化脚本文件,避免新集群启动时拉取到旧版本依赖
  • 清理所有残留的旧作业配置、任务调度规则,避免后续导入新作业时出现重名冲突。

工作区内容(Notebooks、仓库、资产)清理

  • 保留/Users、/Shared、/Repos系统根目录,清空根目录下所有用户自建的子目录、文件、Repos仓库内容
  • 清理所有残留的旧Dashboard、SQL查询、告警规则,这部分资产很容易被漏删,后续导入新资产时会出现重复项
  • 清理完成后直接从之前导出的源端notebook备份包全量导入即可,导入后先核对根目录结构和源端完全一致。

数据库、表资产清理

  • 保留default系统库,删除所有用户自建的数据库,执行DROP DATABASE IF EXISTS <数据库名> CASCADE级联删除库下所有表、视图、函数;进入default库删除所有用户自建的表、视图、函数,不要删系统生成的表
  • 如果使用ADLS Gen2挂载存储的外部表场景,不要删除存储底层的实际数据,仅清理元数据即可,后续导入源端表元数据后直接指向原有存储路径即可正常访问;如果是托管表场景,确认数据已经同步到目标存储后再清理旧的托管表存储路径
  • 删除所有旧的存储挂载点、表级权限配置,按源端配置重新完成存储挂载后再导入库表元数据。

清理后校验

  • 对照之前导出的源端资产清单逐一核对:用户/用户组数量、集群配置参数、notebook目录结构、库表数量,确保没有旧资产残留,也没有资产漏迁
  • 抽取3个以上不同权限层级的普通用户账号登录测试,验证notebook访问、集群启动、表查询、作业查看权限符合预期
  • 跑1-2个核心生产作业做冒烟测试,确认全链路运行正常后再开放工作区给全体用户使用

操作提示:全程开启工作区审计日志,每批次清理操作做好记录,出现问题可以快速回溯定位。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.31 11:30:44