我目前对 MWAA 的理解
MWAA 将 Fargate 用于 Scheduler(s) 和 Worker(s)。MWAA 必须至少有 1 个调度程序,它必须是 Fargate,我假设 24/7 无休止的进程(以避免退役)。Scheduler Fargate 机器也在运行 Celery executor。
触发时,DAG 被 Executor 拆分为任务,每个任务都被添加到队列中,由 Workers 从中拉取。如果是 bash 运算符,任务会提交给 Fargate Worker 并在那里执行。
工人扩展由 Fargate 管理,您只需指定最小/最大计数。如果任务同时提交,工人退役被触发 - 它可能会失败(知道问题)。
问题
假设执行单任务 DAG。任务在另一个 AWS 服务上执行,即 EMR ( EmrAddStepsOperator
)。
- 是
EmrAddStepsOperator
先提交给 MWAA Fargate Worker,然后才提交给 EMR?还是直接从 MWAA Scheduler 提交给 EMR? - 如果我的所有任务都在 EMR 执行,我是否需要 MWAA 工作人员?