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

无法通过Polybase/复制方法将本地数据加载到Synapse的问题排查

私有端点环境下ADF Polybase加载Synapse权限问题解决方案

问题背景

ADF、ADLS Gen2、Synapse均部署于私有端点环境,使用ADF复制活动的批量插入方法可正常将本地数据抽取加载至Synapse,但切换为Polybase/复制方法时,数据能成功复制到ADLS暂存区,却无法加载至Synapse目标表,触发权限相关报错。已确认ADF服务主体拥有ADLS的Blob数据贡献者角色,且配置了针对Synapse和ADLS的专用集成运行时(SHIR)。

需补充配置的权限及检查项

一、Synapse SQL池权限配置

  • 给ADF服务主体授予Synapse的Synapse SQL管理员或目标数据库的SQL用户权限,并在目标数据库执行以下SQL授权语句:
    -- 授予创建外部数据源权限
    GRANT CREATE EXTERNAL DATA SOURCE TO [ADF服务主体名称];
    -- 授予创建外部文件格式权限
    GRANT CREATE EXTERNAL FILE FORMAT TO [ADF服务主体名称];
    -- 授予目标表插入权限
    GRANT INSERT ON [目标表名] TO [ADF服务主体名称];
    
  • 若使用Synapse专用SQL池,需确保ADF服务主体拥有CONTROL DATABASE或ALTER ANY EXTERNAL DATA SOURCE权限——Polybase依赖这些权限创建外部数据源和文件格式。

二、ADLS存储账户额外权限

  • 除Blob数据贡献者外,给ADF服务主体添加存储账户参与者角色(或至少配置Microsoft.Storage/storageAccounts/blobServices/containers/read和Microsoft.Storage/storageAccounts/blobServices/containers/write细粒度权限),Polybase加载时需要读取存储容器元数据。
  • 检查ADLS的私有端点网络规则,确保Synapse SQL池可通过私有端点访问ADLS,可通过VNet对等连接或Synapse网络规则添加ADLS私有端点的允许访问配置。

三、专用集成运行时(SHIR)验证

  • 确认SHIR部署在与ADLS、Synapse同VNet的子网中,且子网NSG允许SHIR与Synapse(1433端口)、ADLS(443端口)的通信。
  • 检查SHIR的凭据配置,确保ADF服务主体已正确注册,且拥有访问Synapse和ADLS的权限。

四、Polybase专属配置检查

  • Synapse创建外部数据源时,优先使用托管身份认证方式,此时需给Synapse的托管身份授予ADLS的Blob数据读取者角色——Polybase加载数据时是Synapse主动访问ADLS暂存区,而非ADF代理。
  • 验证ADLS暂存区文件路径的准确性,Polybase对路径大小写、格式敏感,需确保外部数据源指向的路径与ADF写入的路径完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 22:16:15