在 AirFlow 上部署任务已经有很长一段时间,期间出过一些各种各样的小问题,以下做一个整理总结以及反思,部分问题记录下解决办法。
1. DAG任务名与已有的任务重名
2. 输出表检查
模型输出表通常会作为下游策略任务的依赖表,但是很多时候模型的跑批任务并没有设置输出表(可能有多张表)的检查。
下面一个模型任务有多个输出表,test.model_base_snp
、test.model_score_snp
以及 test.model_score2_snp
,我们很容易关注到模型分的输出表是否及时产生,而 test.model_base_snp
是否在规定时间内产出的问题很容易被忽视。比如我们将 save_db_base
单独做了一个节点操作,出于以往部署的经验,这个节点任务很少会出现问题,导致我们对这个表关注度不够,所以即使失败了,我们也没能及时进行修复。
可优化的地方:
- 多张输出表可以整合成一个输出表,这样策略同事在使用时,只需要关注这个表是否正确产出,尽量不要将一个模型任务拆分成多个表输出。
- 每个模型任务流中,添加一个输出表的检查,这样可以在模型任务流