配置 Amazon MWAA 环境类 - Amazon Managed Workflows for Apache Airflow
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

配置 Amazon MWAA 环境类

您为 Amazon MWAA 环境选择的环境类决定了运行 Celery Executo r 的 Amazon托管 Amazon Fargate 容器的大小,以及 Apache Airflow 计划程序在其中创建任务实例的托管的 Amaz Amazon on Aurora PostgreSQL 元数据数据库的大小。本页描述了每个 Amazon MWAA 环境类,以及在 Amazon MWAA 控制台上更新环境类的步骤。

环境功能

下一节包含每个环境类的默认并发 Apache Airflow 任务、随机存取存储器(RAM)和虚拟集中处理单元(vCPU)。列出的并发任务假设任务并发性不超过环境中的 Apache Airflow 工作线程容量。

在下表中,DAG 容量指的是 DAG 定义,而不是执行,并假设您的 DAG 在单个 Python 文件中是动态的,并且使用 Apache Airflow 最佳实践编写。

任务执行取决于同时安排了多少任务,并假设设置为同时启动的 DAG 运行次数不超过默认值 max_dagruns_per_loop_to_schedule,以及本主题中详细介绍的工作线程的大小和数量。

mw1.small
  • 高达 50 个 DAG 的容量

  • 5 个并发任务(默认)

  • 1 个 vCPU

  • 2 GB RAM

mw1.medium
  • 高达 20 个 DAG 的容量

  • 10 个并发任务(默认)

  • 2 个 vCPU

  • 4 GB RAM

mw1.large
  • 容量高达 1000 个 DAG

  • 20 个并发任务(默认)

  • 4 个 vCPU

  • 8 GB RAM

mw1.xlarge
  • 容量高达 2000 个 DAG

  • 40 个并发任务(默认)

  • 8 个 vCPU

  • 24 GB 内存

mw1.2xlarge
  • 容量高达 4000 个 DAG

  • 80 个并发任务(默认)

  • 16 个 vCPU

  • 48 GB 内存

您可以使用 celery.worker_autoscale 来增加每个工作线程的任务数。有关更多信息,请参阅 高性能用例示例

Apache Airflow 计划程序

下一节包含 Amazon MWAA 上可用的 Apache Airflow 计划程序选项,以及计划程序数如何影响触发器数。

在 Apache Airflow 中,触发器管理在满足使用触发器指定的某些条件之前延迟的任务。在 Amazon MWAA 中,触发器与计划程序一起运行相同的 Fargate 任务。增加计划程序计数会相应地增加可用触发器的数量,从而优化环境管理延迟任务的方式。这样可以确保高效处理任务,在条件满足时及时安排任务运行。

Apache Airflow v2
  • v2– 接受的值介于 25 之间。默认值为 2