Amazon MWAA 環境クラスの構成
Amazon MWAA 環境用に選択した環境クラスによって、Celery Executor が実行される AWS マネージド AWS Fargate コンテナと、Apache Airflow スケジューラがタスクインスタンスを作成する AWS マネージドの Amazon Aurora PostgreSQL メタデータデータベースのサイズが決まります。このトピックでは、Amazon MWAA の各環境クラスと、Amazon MWAA コンソールで環境クラスを更新する方法について説明します。
環境機能
次のセクションには、各環境クラスのデフォルトの同時 Apache Airflow タスク、ランダムアクセスメモリ (RAM)、および仮想中央処理装置 (vCPUs) が含まれています。記載されている同時実行タスクは、タスクの同時実行性が環境内の Apache Airflow ワーカーのキャパシティを超えないことを前提としています。
次の表で、DAG キャパシティとは、実行ではなく DAG 定義を指し、DAG が 1 つの Python ファイル内で 動的 であり、Apache Airflow のベストプラクティス に従って記述されていることを前提としています。
タスクの実行は、同時にスケジュールされる DAG の数によって異なり、同時に開始するように設定されている DAG 実行の数と、このトピックで詳しく説明するワーカーのサイズと数がデフォルト max_dagruns_per_loop_to_schedule を超えないことを前提としています。
- mw1.micro
-
-
最大 25 個の DAG 容量
-
同時 3 タスク (デフォルト)
-
コンポーネント:
- mw1.small
-
-
最大 50 個の DAG 容量
-
同時 5 タスク (デフォルト)
-
コンポーネント:
- mw1.medium
-
-
最大 250 個の DAG 容量
-
同時 10 タスク (デフォルト)
-
コンポーネント:
- mw1.large
-
-
最大 1,000 個の DAG 容量
-
同時 20 タスク (デフォルト)
-
コンポーネント:
- mw1.xlarge
-
-
最大 2,000 個の DAG 容量
-
同時 40 タスク (デフォルト)
-
コンポーネント:
- mw1.2xlarge
-
-
最大 4,000 個の DAG 容量
-
同時 80 タスク (デフォルト)
-
コンポーネント:
celery.worker_autoscale を使用して、作業者 1 人あたりのタスク数を増やすことができます。詳細については、高パフォーマンスのユースケースの例 を参照してください。
Apache Airflow スケジューラー
以下のセクションでは、Amazon MWAA で使用できる Apache Airflow スケジューラーオプションと、スケジューラーの数がトリガーの数にどのように影響するかについて説明します。
Apache Airflow では、トリガーを使用して指定された特定の条件が満たされるまでタスクを延期する トリガー がタスクを管理します。Amazon MWAA では、トリガーは同じ Fargate タスクでスケジューラーと並行して実行されます。スケジューラーの数を増やすと、それに応じて使用可能なトリガーの数も増え、遅延されたタスクを環境がどのように管理するかが最適化されます。これにより、タスクを効率的に処理できるようになり、条件が満たされた時点でタスクを迅速に実行するようにスケジューリングできます。
- Apache Airflow v3
-
- Apache Airflow v2
-