我的AWS帐户里有一个MWAA气流env。我正在设置的DAG应该从S3存储桶A中读取大量数据,过滤我想要的内容,并将过滤后的结果转储到S3桶B。它需要每分钟读取一次数据,因为数据每分钟都会出现。每次运行都会处理大约200 of的json数据。
我最初的设置是在10台辅助机器上使用env类mw1.small,如果在此设置中只运行一次任务,则每次运行大约需要8分钟,但当我每分钟启动计划运行时,大部分时间无法完成,开始运行时间要长得多(大约18分钟),并显示错误消息:
[2021-09-25 20:33:16,472] {{local_task_job.py:102}} INFO - Task exited with return code Negsignal.SIGKILL我尝试用15个工人将env类扩展到mw1.large,更多的作业能够在错误出现之前完成,但仍然无法赶上每分钟摄入的速度。Negsignal.SIGKILL错误在达到工作机器最大值之前仍然会显示。
在这一点上,我应该做什么来衡量这一点?我可以想象,打开另一个气流env,但这并没有真正的意义。一定有办法在一个环境中做到这一点。
发布于 2021-09-29 21:44:08
我已经找到了这方面的解决方案,对于MWAA,编辑环境,并在Airflow configuration options下设置这些信任
这将确保工作机器一次运行一个作业,从而防止多个作业共享该工作,从而节省内存并减少运行时。
https://stackoverflow.com/questions/69350793
复制相似问题