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

如何通过Azure Synapse Notebook读取Azure集成数据集至Dataframe

读取Azure集成数据集指向的文件方法

集成数据集(Integration Dataset)是Azure Data Factory中对底层存储数据的逻辑引用,本身不存储实际数据,读取它本质就是读取它配置指向的底层存储文件,以下是两种常用实现方式:

一、在Azure Data Factory管道中直接调用集成数据集

  • 打开或新建ADF管道,添加数据读取类活动(比如复制活动、数据流活动)
  • 在活动的数据源配置环节,直接选择目标集成数据集:
    • 复制活动:在「源」选项卡的「数据集」下拉框选中你要读取的集成数据集,按需配置文件名筛选、读取模式等参数后,就能直接读取它指向的文件
    • 数据流活动:在数据源节点的「数据集」选项里选中目标集成数据集,后续可直接在数据流中做数据转换、处理
  • 调试或发布管道即可完成读取操作

二、用代码读取集成数据集指向的文件(以Python为例)

你可以通过ADF API获取集成数据集的配置信息,提取出底层存储的连接参数和文件路径,再用对应存储SDK读取文件:

  • 先安装依赖包:
pip install azure-mgmt-datafactory azure-storage-file-datalake azure-identity
  • 示例代码:
from azure.mgmt.datafactory import DataFactoryManagementClient
from azure.identity import DefaultAzureCredential
from azure.storage.filedatalake import DataLakeServiceClient

# 实例化ADF管理客户端
credential = DefaultAzureCredential()
adf_client = DataFactoryManagementClient(credential, "你的订阅ID")

# 获取目标集成数据集的配置详情
dataset = adf_client.datasets.get("你的资源组名", "你的ADF工厂名", "目标数据集名称")
# 提取ADLS Gen2的存储信息(根据数据集类型调整字段)
storage_account_name = dataset.properties.linked_service_name.reference_name
file_system = dataset.properties.type_properties["folderPath"].split("/")[0]
target_file_path = "/".join(dataset.properties.type_properties["folderPath"].split("/")[1:])

# 连接ADLS并读取文件
adls_service_client = DataLakeServiceClient(
    account_url=f"https://{storage_account_name}.dfs.core.windows.net",
    credential=credential
)
file_client = adls_service_client.get_file_client(file_system, target_file_path)
file_content = file_client.download_file().readall()

注意事项

  • 不同类型的集成数据集(比如Blob存储、SQL表),读取逻辑一致:要么在ADF活动中直接调用,要么提取其连接信息和数据位置后用对应SDK操作
  • 确保你使用的服务主体或账户拥有集成数据集关联的链接服务权限,以及底层存储的读取权限

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 19:03:21