Amazon Managed Workflows for Apache Airflow (MWAA) のよくある質問

ページトピック

全般

全般

Amazon Managed Workflows for Apache Airflows (MWAA) は、ワークフローと呼ばれる一連のタスクを通じてデータを組み合わせ、強化し、変換することにより、組織全体でビジネスに関する洞察を抽出するために使用されるマネージド Apache Airflow サービスです。Managed Workflows を使用すると、Airflow 環境の管理、設定、スケーリングの手間から解放され、データ処理ワークフローを調整し、AWS がサポートするロギングおよびモニタリング機能を通じてその実行を管理できます。Amazon MWAA で既存の Airflow ワークフローを実行し、AWS コンソール、API、およびコマンドラインインターフェイス (CLI) を使用してプログラムで環境と対話することができます。 

Amazon MWAA を使用することで、マネージドサービスから一貫したパフォーマンスを実現しながら、ワークフローの構築により多くのエンジニアリング/データサイエンスの時間を費やし、インフラストラクチャや Airflow 環境の管理に費やす時間を短縮することができます。データエンジニアリングチームやデータサイエンスチームは、抽出-変換-読み込み (ETL) ジョブや機械学習データパイプラインを定義するワークフローを構築および実行するための主要なオープンソースオーケストレーション環境として Airflow を使用しています。データ処理の優先言語である Python で作成されたワークフローをプログラムで構築、スケジュール、および監視する Airflow の機能は高く評価されるでしょう。Airflow のタスクプラグインモデルとオープンアーキテクチャは、オンプレミスデータソースのサポートを含めてカスタムワークフローの構築を可能にします。ただし、Airflow のプログラムによるインターフェイスのメリットを享受したいチームは、最初にサーバーを構成および保守し、サーバーが機能するように監視する必要があります。多くのお客様は、データエンジニアを専任にして、ワーカーフリートの管理、依存関係のインストール、システムのスケールアップとスケールダウン、およびスケジューラの再起動を行っています。Managed Workflows は、高可用性、監視、および自動的にスケーラブルなマネージド Airflow 環境を提供することにより、こうした実践的な操作の必要性を排除します。 

Amazon MWAA は、インフラストラクチャのキャパシティ (サーバーインスタンスとストレージ) のプロビジョニングからソフトウェアのインストール、AWS Identity and Access Management (IAM) と Single Sign-On (SSO) による簡素化されたユーザー管理と承認の提供まで、Airflow のセットアップに関連する作業を管理します。 

Amazon MWAA は、データエンジニアとデータサイエンティストが他の AWS、オンプレミス、および他のクラウドサービスを使用してワークフローを構築できるようにするワークフロー環境です。Amazon MWAA ワークフローは、Athena クエリを使用して S3 などのソースから入力を取得し、EMR クラスターで変換を実行し、結果のデータを使用して SageMaker で機械学習 (ML) モデルをトレーニングします。Amazon MWAA のワークフローは、Python を使用した Directed Acyclic Graphs (DAG) として作成されています。Airflow の主な利点は、プラグインによるオープンな拡張性です。これにより、Athena、Batch、Cloudwatch、DynamoDB、DataSync、EMR、ECS/Fargate、EKS、Firehose、Glue、Lambda、Redshift、SQS、SNS、Sagemaker、および S3 などのワークフローに必要な AWS またはオンプレミスリソースのタスクプラグインを作成できます。 

Amazon MWAA は、AWS マネジメントコンソール、AWS CLI、SDK を介して利用可能な Airflow 環境へのアクセスを提供します。Airflow ユーザーインターフェイスは、インターネットや VPC に直接アクセスするように構成できます。Airflow コマンドラインの手順は、API コールと AWS CLI を介して利用できます。 

Amazon MWAA は、S3 バケットに配置するだけで、これまでに開発された 100 以上の Airflow コミュニティプラグインのすべてに加えて、作成したカスタムプラグインをサポートします。 

Amazon MWAA マネジメントコンソールと Airflow UI を介して、それぞれの Airflow 環境に直接アクセスできます。Airflow メトリクスは Amazon CloudWatch メトリクスに公開され、ログは CloudWatch Logs に公開されます。 

オープンソースと移植性を優先する場合は、Amazon MWAA を使用する必要があります。Airflow には、新しい機能と統合を定期的に提供する大規模でアクティブなオープンソースコミュニティがあります。Amazon MWAA は、コードを変更せずに既存の Airflow ワークフローと統合をサポートし、移行が簡単で、環境は使い慣れたものです。

コストとパフォーマンスを優先する場合は、Step Functions を使用するのがよいでしょう。例えば、ストリーミングデータを処理し、DynamoDB データベースまたは S3 に配置する前に複数のステップで変換する場合は、パフォーマンスが高く、コストが低いため、Step Functions を使用するのがよいでしょう。