如何在ADF管道中使用通配符从存储容器复制指定前缀文件?
问题原因分析
- 通配符配置位置错误:ADF的数据集固定文件名字段默认执行精确匹配,不支持通配符解析,多数校验失败是因为直接把
aa_aaa_*.csv写在了源数据集的固定文件名参数里,通配符规则只能在复制活动的源配置项中生效。 - 路径层级配置错误:如果源数据集没有正确留空文件名字段,锁定了具体文件名层级,也会导致通配符规则无法覆盖扫描范围。
- 规则冲突:对接启用分层命名空间的ADLS Gen2存储时,若同时配置了前缀筛选和通配符规则,二者会出现逻辑冲突导致匹配失效。
正确配置步骤
1. 调整源数据集配置
源数据集只需要定位到存储容器/目标文件所在的根目录层级即可,文件名字段完全留空,不要填写任何固定值或通配符。
2. 配置复制活动源规则
进入复制活动的「源」选项卡,将「文件路径类型」修改为「通配符路径」,按如下规则填写:
- 通配符文件夹路径:如果目标文件都存放在容器根目录,填
/即可;如果存放在指定子目录,填写对应子目录路径 - 通配符文件名:直接填写
aa_aaa_*.csv,不要额外加任何引号
3. 验证匹配结果
配置完成后先点击「验证」按钮确认无报错,再点击「预览数据」,就能看到匹配到的3个目标文件:
- aa_aaa_01_yyyymmdd.csv
- aa_aaa_02_yyyymmdd.csv
- aa_aaa_03_yyyymmdd.csv
兜底排查方案
如果配置后仍未生效,按如下顺序排查:
- 确认通配符规则的大小写和存储中实际文件名的大小写完全一致,ADF通配符匹配默认大小写敏感
- 确认没有同时开启前缀筛选和通配符配置,二者仅保留一项即可
- 确认存储账户的防火墙规则已放开ADF的访问权限,避免权限问题导致的文件扫描失败
内容的提问来源于stack exchange,提问作者D.R.
相关产品推荐
相关产品推荐

