在ADF中设置ISO格式日期变量并构建yyyy/MM/DD文件夹存储结构
在Azure Data Factory中拆分ISO日期并构建文件夹路径
步骤1:创建基础日期变量
在管道中新建一个String类型的变量(例如命名为sourceISODate),将目标ISO格式日期(如"2021-12-01T00:00:00Z")赋值给该变量。
步骤2:提取年、月、日独立变量
利用ADF内置的日期函数,分别创建三个变量提取对应维度:
- 年份变量(如
yearFolder):表达式为formatDateTime(variables('sourceISODate'), 'yyyy') - 月份变量(如
monthFolder):表达式为formatDateTime(variables('sourceISODate'), 'MM') - 日期变量(如
dayFolder):表达式为formatDateTime(variables('sourceISODate'), 'dd')
注意:ADF日期格式规则中,
dd代表两位日期,DD指一年中的第几天,这里用dd才能匹配你需要的yyyy/MM/dd文件夹结构。
步骤3:在Copy活动Sink中拼接路径
进入Copy活动的Sink配置界面,在文件路径(或容器+路径)字段中,通过如下方式拼接变量生成目标路径:
@{variables('yearFolder')}/@{variables('monthFolder')}/@{variables('dayFolder')}
最终会生成2021/12/01格式的文件夹路径。
动态场景适配
如果ISO日期是从触发器、数据集参数等动态获取的,直接将基础变量的赋值表达式替换为对应动态内容即可。比如用触发器启动时间的话,表达式为formatDateTime(trigger().startTime, 'yyyy-MM-ddTHH:mm:ssZ'),再按上述步骤拆分年、月、日。
内容的提问来源于stack exchange,提问作者Athiya
相关产品推荐
相关产品推荐

