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

启用Databricks Unity Catalog时创建元数据访问资源失败求助

Databricks Unity Catalog元数据访问资源问题解答

1. databricks_metastore_data_access资源的作用

这个资源是Unity Catalog元数据存储的身份验证桥接器,核心作用是让Databricks账户级服务安全访问元数据存储的底层存储资源(比如Azure上的ADLS Gen2容器)。它通过配置的身份(这里是Azure托管身份+Access Connector),为元数据的读写操作(比如创建数据库、表的元数据持久化)提供权限凭证,是元数据存储正常工作的必要组件。

2. 是否必须创建?

是的,必须创建。Unity Catalog的元数据存储依赖该资源提供的身份验证能力,没有它的话,元数据存储无法与底层存储交互,工作区将无法正常使用Unity Catalog的核心功能(比如创建受控目录、管理表权限等)。尤其是你设置了is_default = true,这会让元数据存储默认使用该身份访问存储,是配置流程中不可或缺的一步。

3. 解决创建失败的排查步骤

  • 检查Access Connector权限:确认你配置的azurerm_databricks_access_connector对应的托管身份,对元数据存储绑定的ADLS Gen2容器拥有Storage Blob Data Contributor权限,且权限已生效(权限同步可能需要1-5分钟)。
  • 验证Metastore ID正确性:确保databricks_metastore.this.id是账户级元数据存储的ID,而非工作区级资源ID,可通过Databricks账户控制台的元数据存储详情页查看。
  • 确认Provider权限:用于创建该资源的account-level Terraform Provider,必须配置了拥有账户级Unity Catalog管理员或元数据存储管理员权限的凭证,否则会因权限不足创建失败。
  • 查看账户级日志:登录Databricks账户控制台,进入「监控>日志」,搜索与metastore data access相关的操作日志,通常能找到Terraform未返回的详细错误原因(比如存储资源不存在、身份验证失败)。
  • 检查资源区域一致性:确保Access Connector、元数据存储的底层存储账户处于同一Azure区域,Databricks要求这些资源区域必须匹配。
  • 手动创建验证:先在Databricks账户控制台手动创建一个Metastore Data Access,使用相同的Access Connector和配置参数。如果手动创建成功,对比Terraform配置,排查是否存在参数差异(比如名称重复、owner组不存在)。
  • 校验owner参数:确保owner = "admin-group"是账户级存在的组,而非工作区级组,因为该资源是账户级资源,只能指定账户级身份作为owner。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 13:52:42