目标
管线运行顺序应依据真实依赖而非时钟时序。本工作流把任务及其真实上游建模为有向无环图,用传感器等待上游数据可用而非固定延时,并在上游失败时停止下游,最后通过人为延迟上游验证下游会正确等待。
步骤要点
- 把任务与真实上游依赖建模为有向图。
- 用传感器等待上游数据就绪而非固定延时。
- 上游失败时停止下游任务。
- 人为延迟上游验证下游正确等待。
# wait on upstream data rather than a fixed delay
task_downstream >> task_upstream
# or use a sensor on the upstream dataset
验证
按顺序执行上述步骤后,逐项确认每个步骤的预期状态均已满足;只有全部预期状态成立,才认为本流程完成。若某一步未达到预期状态,应先按排错提示排查,不要跳过继续,以免掩盖问题。
排错提示
- 时钟等待会读到陈旧上游数据。
- 隐藏依赖在排期变化时断裂。
- 失败会静默级联成错误产出。
适用边界
- 需要编排器与任务定义。
- 依赖应反映数据流。