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

Azure Data Factory Dataflow动态读取分区文件夹CSV文件的方法

Azure Data Factory Dataflow 动态读取分区文件及批量读取子文件夹文件方案

一、动态读取按yyyy/mm/dd/timestamp格式分区的CSV文件

有两种实用实现方式:

  • 参数化路径+通配符匹配

    1. 在管道中创建日期参数(如targetDate),格式设为yyyy-MM-dd。
    2. 进入Dataflow的CSV数据源设置,将文件夹路径配置为表达式:
      concat('你的根路径/', formatDateTime(pipeline().parameters.targetDate, 'yyyy/MM/dd/'), '*')
      
      其中*用于匹配当日所有timestamp子文件夹。
    3. 若需读取日期范围内的分区,可结合StartDate和EndDate参数,配合通配符*覆盖区间;也可开启数据源的「分区选项」,选择「基于文件夹的分区」,指定分区格式为yyyy/MM/dd/HHmmss,系统会自动识别分区列并支持过滤。
  • 动态分区过滤
    在数据源的「分区选项」中选择「自定义分区」,用表达式筛选指定日期范围的分区,示例:

    toDate(concat(year, '/', month, '/', day), 'yyyy/MM/dd') >= toDate(pipeline().parameters.StartDate) && toDate(concat(year, '/', month, '/', day), 'yyyy/MM/dd') <= toDate(pipeline().parameters.EndDate)
    

    注:year/month/day是ADF自动从文件夹路径解析出的分区列名。

二、一次性读取test/dwh/tablename/下所有子文件夹的文件

通过两步快速实现:

  1. 打开Dataflow的CSV数据源设置,将文件夹路径设为test/dwh/tablename/。
  2. 在「文件设置」区域勾选递归选项,系统会自动遍历该路径下所有层级的子文件夹,读取其中的CSV文件。
  3. 若仅需读取特定文件名(如示例中的files.csv),可在「文件名」输入框填写files.csv,同时保持「递归」勾选,即可精准匹配所有子文件夹下的目标文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 03:47:12