如何在Azure Databricks配置Unity Catalog及元存储关联问题
Azure Databricks Unity Catalog 配置指南(含元存储关联故障排查)
一、Azure门户前置准备
- 确认你的高级层Azure Databricks工作区已创建,且工作区区域要和后续元存储、存储容器保持一致,跨区域会导致关联失败。
- 在Azure门户给Databricks工作区的托管标识/服务主体配置必要权限:
- 至少拥有
Storage Blob Data Contributor权限(用于访问存储容器) - 拥有
Microsoft.Databricks/workspaces/metastores/assign/action权限(用于关联元存储)
- 至少拥有
二、创建并配置Unity Catalog元存储
- 进入Databricks工作区,左侧导航栏选Data > Unity Catalog,点击Create a metastore。
- 填写元存储名称、选择与工作区同区域的位置,然后指定一个Azure存储容器作为根存储位置(用来存元数据备份和日志)。
- 给工作区的托管标识/服务主体分配
Metastore Admin角色,这是关联工作区的必要权限。
三、存储容器配置要求
- 存储账户必须是General Purpose v2或Blob Storage类型,且已启用分层命名空间(Hierarchical Namespace)。
- 容器访问权限设为专用,禁止公共访问。
- 在Azure门户的存储账户>访问控制>添加角色分配,给Databricks工作区的标识分配
Storage Blob Data Contributor权限到该容器。
四、关联工作区到元存储
- 在Unity Catalog的元存储列表里找到刚创建的元存储,点击Assign to workspace。
- 选中你的高级层工作区,确认后完成关联。
- 重启Databricks集群,让集群加载新的元存储配置。
五、关联失败排查要点
- 区域不匹配:元存储、工作区、存储容器必须在同一Azure区域,这是硬性要求。
- 权限缺失:检查工作区标识是否同时拥有元存储的
Metastore Admin和容器的Storage Blob Data Contributor权限。 - 存储配置错误:确认存储账户已开分层命名空间,容器是专用访问模式。
- 工作层验证:确保工作区确实是高级层,标准层不支持Unity Catalog。
- 网络限制:如果工作区用了VNet注入,要检查存储账户的防火墙规则是否允许VNet内的Databricks资源访问。
内容的提问来源于stack exchange,提问作者James Trump
相关产品推荐
相关产品推荐

