通过DS Job每日批量作业做了初始化,记录条数为110692244条,跑批后成功抽取110692244条。但对比数据发现近1/3的数据日期字段与上游数据不一致。部分错误数据如下表所示:
字段名 | 处理逻辑 | 上游集市日期 | 抽取到的日期 | 备注 |
STATIS_DT | 取上游表字段 | 2013-3-18 | 1970-3-1 | 年份和日不对,月份一致 |
SCORE_MID_ADJ_LMT_OUT_DT | 取上游表字段 | 2011-9-27 | 1970-9-1 | 年份和日不对,月份一致 |
LST_UPT_DT | 取系统当前时间 | 2013-3-19 | 1970-3-1 | 年份和日不对,月份一致 |
上游数据日期是正确的,但装载到目标表后部分日期就变成了1970年,问题原因一直没检查出来,通过造1000W的数据也没能重现此问题。
问题原因猜测:
1 数据量过大?目前是110692244
2 和DS JOB运行环境相关配置有关?会是哪些相关配置会影响日期的转换?
3 源数据库是teradata,目标数据库是sql server,字段类型都是date类型,在transformer的时候没有对日期类型作额外处理,DS默认是如何处理日期转换的?
谢谢各位!