如何使用Azure Data Factory将OneDrive中Excel数据复制到Azure Blob
实现方案:Azure Data Factory 同步 OneDrive Excel 到 Azure Blob
完全可以通过ADF原生能力实现,不需要借助Logic App,以下是具体操作步骤:
前置要求
- 你使用的OneDrive账号(工作/学校账号或个人账号)对目标Excel文件有可读权限
- 有Azure Data Factory实例的编辑权限,以及目标Blob存储的写入权限
方案1:使用复制活动(适合仅同步、无数据转换的场景)
- 进入ADF Studio,打开「管理」面板,选择「链接服务>新建」
- 搜索并选择对应类型的OneDrive连接器(工作/学校账号选OneDrive for Business,个人账号选OneDrive个人版),使用OAuth 2.0登录完成账号授权,测试连接通过后保存链接服务
- 再次新建链接服务,搜索选择「Azure Blob Storage」,通过访问密钥、SAS或托管身份完成存储账号的授权,测试通过后保存
- 进入「作者」面板新建管道,拖入「复制数据」活动
- 源端配置:选择已创建的OneDrive链接服务,指定目标Excel文件的路径,文件格式选择Excel,可根据需求配置是否将首行设为表头、是否批量同步多个Excel文件
- 接收器端配置:选择已创建的Blob存储链接服务,指定文件存放路径,可选择保留Excel原格式,或转换为CSV、Parquet等其他格式
- 调试运行管道验证同步结果,验证通过后可配置定时触发器实现自动同步
方案2:使用数据流(流活动,适合需要同步同时做数据处理的场景)
如果你需要在同步过程中对Excel数据做清洗、转换操作,可以使用映射数据流实现:
- 新建映射数据流,源端选择已创建的OneDrive链接服务,选择目标Excel文件并导入数据架构
- 根据业务需求添加转换节点,支持列筛选、数据类型转换、聚合、关联其他数据源等操作
- 接收器端选择Blob存储链接服务,配置输出路径和文件格式
- 回到管道编辑页,拖入「数据流」活动,关联刚创建的映射数据流,调试运行即可
注意事项
- 如果Excel包含多个工作表,需要在源配置中指定要同步的工作表名称,也可以通过通配符批量匹配多个工作表
- 单Excel文件大小超过4GB时,建议提前拆分文件或开启ADF的并行读取配置
- 当OneDrive账号权限变更后,需要重新更新OneDrive链接服务的授权信息
内容的提问来源于stack exchange,提问作者Oki Kuswanda
相关产品推荐
相关产品推荐

