Amazon Managed Workflows for Apache Airflow (MWAA)
Amazon Managed Workflows for Apache Airflow (MWAA) は、Apache Airflow1 のマネージドオーケストレーションサービスであり、クラウドでエンドツーエンドのデータパイプラインの設定と運用を大規模かつ簡単に行えるようにします。Apache Airflow は、「ワークフロー」と呼ばれる一連のプロセスとタスクをプログラムで作成、スケジュール、および監視するために使用されるオープンソースツールです。 Managed Workflows を使用すると、スケーラビリティ、可用性、セキュリティのために基盤となるインフラストラクチャを管理することなく、Airflow と Python を使用してワークフローを作成できます。Managed Workflows は、ニーズに合わせてワークフロー実行能力を自動的にスケーリングし、AWS セキュリティサービスと統合して、データへの高速で安全なアクセスを可能にします。
利点
Airflow を迅速かつ大規模にデプロイ
AWS マネジメントコンソール、CLI、AWS CloudFormation、AWS SDK から数分で開始できます。アカウントを作成し、開発リソースやプロビジョニングインフラストラクチャに依存することなく、Airflow 環境への Directed Acyclic Graphs (DAG) のデプロイをすぐに開始できます。
ビルトインセキュリティで Airflow を実行
Managed Workflows では、ワークロードが Amazon の Virtual Private Cloud (VPC) を使用して独自の分離された安全なクラウド環境で実行され、データが AWS Key Management Service (KMS) を使用して自動的に暗号化されるため、データは基本的に安全です。AWS Identity and Access Management (IAM) を介して Apache Airflow のユーザーインターフェイスのロールベースの認証と承認をコントロールし、ワークフローの実行をスケジュールおよび表示するためのシングルサインオン (SSO) アクセスをユーザーに提供できます。
運用コストの削減
Managed Workflows はマネージドサービスであり、オープンソースの Apache Airflow を大規模に実行する手間を省きます。Managed Workflows を使用すると、エンドツーエンドのデータパイプラインオーケストレーションのオンデマンドモニタリングのニーズを満たしながら、運用コストとエンジニアリングのオーバーヘッドを削減できます。
既存のプラグイン、または独自のプラグインを使用
Athena、Batch、Cloudwatch、DynamoDB、DataSync、EMR、ECS / Fargate、EKS、Firehose、Glue、Lambda、Redshift、SQS、SNS、Sagemaker、S3 などのワークフローに必要な AWS またはオンプレミスのリソースとつながります。
仕組み
Amazon Managed Workflows for Apache Airflow (MWAA) は、Python で記述された Directed Acyclic Graphs (DAG) を使用して、ワークフローを調整およびスケジュールします。Managed Workflows に、DAG、プラグイン、Python の依存関係リストが存在する S3 バケットを提供し、手動またはコードパイプラインを使用してアップロードし、抽出、変換、読み込み (ETL)、および学習プロセスを記述および自動化します。次に、CLI、SDK、または Airflow UI から DAG を実行および監視します。

ユースケース
複雑なワークフローを可能にする
ビッグデータプロバイダーは、多くの内部および外部サービスを接続する複雑なデータパイプラインを必要とすることがよくあります。このデータを使用するには、最初に、データを準備および処理する一連の順次タスクを定義するワークフローを構築する必要があります。Managed Workflows は、これらのワークフローをスケジュールに従って、またはオンデマンドで実行します。Managed Workflows は、ウェブユーザーインターフェイスを使用するか、Cloudwatch を一元的に使用して複雑なワークフローを監視します。
抽出、変換、ロード (ETL) ジョブを調整
Managed Workflows をオープンソースの代替手段として使用して、任意の複雑な ETL ワークフローでさまざまなテクノロジセットを含む複数の ETL ジョブを調整することができます。例えば、オンラインユーザーエンゲージメントと予測される販売収益および機会との相関関係を調査したい場合があります。この場合、Managed Workflows を使用して、複数の AWS Glue、Batch、EMR ジョブを調整し、分析用のデータをブレンドして準備できます。
機械学習 (ML) データを準備
機械学習を有効にするには、ソースデータを収集、処理、正規化して、フルマネージドサービスの Amazon SageMaker などの ML モデリングシステムがそのデータをトレーニングできるようにする必要があります。Managed Workflows は、ML パイプラインを自動化するために必要な手順を簡単にまとめることで、この問題を解決します。
1Apache、Apache Airflow、および Airflow は、米国およびその他の国における Apache Software Foundation の登録商標または商標です。