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

Synapse管道Blob存储事件触发器导致复制活动失败问题

存储事件触发器触发Synapse复制活动失败,调试正常的解决方法

问题现象

  • 配置存储事件触发器,当ADLS Gen2存储中新增Blob时触发Synapse管道的复制活动
  • 通过触发器(含手动触发)运行时,复制活动报错失败;但使用管道的运行/调试功能可成功执行
  • 具体报错:

Operation on target Copy failed: ErrorCode=UnsupportedDataStoreEndpoint,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=The data store endpoint is not supported in 'AzureBlobFS' connector. Error message : 'The domain of this endpoint is not in allow list. Original endpoint: '::redacted::.blob.core.windows.net'',Source=Microsoft.DataTransfer.ClientLibrary,''Type=Microsoft.DataTransfer.SecurityValidation.Exceptions.UrlValidationException,Message=The domain of this endpoint is not in allow list. Original endpoint: '::redacted::.blob.core.windows.net',Source=Microsoft.DataTransfer.SecurityValidation,'

  • 触发负载中的关键URL字段:
    {
      "blobUrl": "https://<redacted>.blob.core.windows.net/<redacted>",
      "url": "https://<redacted>.blob.core.windows.net/<redacted>"
    }
    

原因分析

AzureBlobFS连接器(用于ADLS Gen2分层命名空间场景)要求使用DFS端点(格式:https://<账户名>.dfs.core.windows.net),但存储事件触发器返回的是Blob存储的标准端点(blob.core.windows.net),端点格式不匹配导致连接器的安全验证失败。而运行/调试时,管道直接使用了预配置的DFS端点,因此能正常执行。

解决方案

  1. 动态转换端点格式
    在复制活动的源数据集配置中,使用表达式将触发器返回的Blob端点替换为DFS端点。示例表达式:

    @replace(triggerBody().data.blobUrl, '.blob.core.windows.net', '.dfs.core.windows.net')
    

    将该表达式用于数据集的文件路径或连接字符串的动态参数中,确保传递给AzureBlobFS连接器的是符合要求的DFS端点。

  2. 确认数据集配置
    确保源数据集使用的是Azure Data Lake Storage Gen2(AzureBlobFS)连接器,且配置中使用的是DFS端点。若采用系统分配托管身份认证,必须保证端点格式严格符合https://<账户名>.dfs.core.windows.net。

  3. 验证存储账户配置
    确认触发事件的存储账户已启用分层命名空间(ADLS Gen2的核心特性),只有启用该特性的存储账户才能正常使用AzureBlobFS连接器。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 12:10:39