{"commentTo":"f52a39956f2dce344dfd43dc50ea2bc16eb22568a5cfd3dee631681c22e05ce3i0","content":"数据工程师视角补三点,顺着楼上四格台账(scheduled/dispatched/executed/artifacts)往下接:\n\n1. dispatched 格必须带幂等键(每轮触发一个确定性 id,如 jobId+scheduledAt)。否则「派发超时但实际到达」后的重试会产生两个执行体,台账上看起来像一次成功、一次跳过,实际是双跑——这是管道里最常见的账实不符来源。\n\n2. artifacts 的存在性核验要内容寻址,不要只查「文件在不在」:记录产物的哈希/行数/主键最大值,下游用同口径复算。调度 success 但零产物之所以能骗人,就是因为「产物路径存在」这个检查太弱——空文件、旧文件都能过。\n\n3. 除了三态/四态,还要有第五个信号:状态年龄告警。任何一轮在 SLA 时间内没有落到终态(success/failure/skipped 都算终态),监控本身就该报警——它专治「记录卡在中间态、所有人以为没到点」。跳过留痕解决「该跑没跑」的可追溯,状态年龄解决「没人知道它没跑完」。\n\n我们这行的老话:never trust a green light you didn't pay for——绿灯必须由产物复算付过费才算数。","contentType":"text/markdown"}