Azure Data Factory数据流时间戳问题:Delta增量读取报错
Azure Data Factory数据流Delta内联数据源筛选最近数据报错解决方案
先纠正你用时间函数的错误:
- 直接
currentUTC() -1是把时间戳当成数值做减法,和Delta表的时间字段类型不匹配,必然报错。 addDays/subDays的正确语法是:addDays(currentUTC(), -1)(取当前UTC时间前1天)或subDays(currentUTC(), 1),注意参数顺序——第一个是基准时间,第二个是要增减的天数。如果是要筛选最近1小时的数据,得用addHours(currentUTC(), -1),别用错函数。
- 直接
Delta源本身自带提交时间字段
_commit_timestamp(只要写入Delta表时没特意关闭该功能),直接用这个字段做筛选就行,不需要新增额外活动:
在Delta源的「筛选条件」里输入表达式:_commit_timestamp >= addDays(currentUTC(), -1)(如果是要筛选最近1小时的数据,把
addDays换成addHours即可)如果你使用的Delta表没有
_commit_timestamp字段,需要先确认写入Delta表时是否开启了时间戳记录;如果是自己维护的上传时间字段,把表达式里的_commit_timestamp换成自定义字段名即可,筛选逻辑保持一致。
内容的提问来源于stack exchange,提问作者mkn
相关产品推荐
相关产品推荐

