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

使用Synapse管道同步Delta Lake数据时遇文件系统不存在错误

解决Synapse管道复制Databricks UC Delta数据时的「指定文件系统不存在」404错误

可能的原因及对应解决步骤

1. 暂存存储配置错误(最常见)

预览数据时无需依赖Polybase暂存,而实际运行时必须通过暂存存储完成数据加载,这是预览正常但运行失败的核心差异:

  • 检查暂存设置中指定的ADLS Gen2文件系统名称是否完全匹配:ADLS Gen2文件系统名称区分大小写,预览时可能存在宽松校验,但运行时严格匹配,大小写错误会直接触发404。
  • 验证访问暂存存储的身份权限:确保Synapse工作区托管标识(或指定的服务主体)拥有该文件系统的Storage Blob Data Contributor权限,至少需具备写入、读取和列出文件的权限。

2. 运行时与预览时的身份权限差异

预览数据使用当前登录用户的身份,管道运行时则使用Synapse托管标识(或配置的服务主体),两者权限可能不一致:

  • 在Databricks中,给Synapse的托管标识授予对应Unity Catalog表的SELECT权限,同时确保该标识能访问Delta表底层的存储路径(UC表的存储路径权限需同步配置)。
  • 可在Databricks中模拟托管标识的查询:SELECT * FROM <catalog_name>.<schema_name>.<table_name>,若查询失败,说明权限不足,需补充配置。

3. 动态查询的变量替换异常

运行时动态变量替换可能出现偏差,导致查询返回的路径指向不存在的文件系统:

  • 启用管道调试日志,查看运行时实际执行的SQL语句,与预览时的语句对比,确认变量替换后完全一致(比如参数中的schema、表名是否拼写正确)。
  • 若查询中包含动态生成的存储路径,需确保路径中的文件系统名称无拼写错误。

4. Unity Catalog配置兼容性

确认Synapse Databricks连接器的UC配置正确:

  • 在Databricks源数据集中,选择「Unity Catalog」作为元数据来源,正确填写Catalog、Schema和表名,避免使用旧的Hive元存储路径配置。
  • 确保Synapse工作区使用的是支持UC的连接器版本(目前Synapse默认支持UC,旧版连接器可能存在兼容性问题)。

内容的提问来源于stack exchange,提问作者Koen van Wielink

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 05:27:07