リソース - AWS Data Pipeline

リソース

AWS Data Pipeline では、リソースは、パイプラインアクティビティで指定された作業を実行するコンピューティングリソースです。AWS Data Pipeline は、以下のタイプのリソースをサポートしています。

Ec2Resource

パイプラインアクティビティによって定義された作業を実行する EC2 インスタンス。

EmrCluster

パイプラインアクティビティ (EmrActivity など) によって定義される作業を実行する Amazon EMR クラスター。

リソースは、作業データセットと同じリージョンで実行できます。AWS Data Pipeline と異なるリージョンであってもかまいません。詳細については、「複数のリージョンにあるリソースとパイプラインの使用」を参照してください。

リソースの制限

AWS Data Pipeline は、多くの同時実行タスクに対応するように拡張でき、大量の作業負荷を処理するために必要なリソースを自動的に作成するよう設定できます。これらの自動的に作成されたリソースは、お客様の管理下にあり、AWS アカウントのリソースに対する制限の対象となります。例えば、AWS アカウントの EC2 インスタンスの制限が 20 個に設定されている場合に、20 個のノードで構成される Amazon EMR クラスターを自動的に作成してデータを処理するように AWS Data Pipeline を設定すると、使用可能なバックフィルリソースを意図せずに使い切ってしまう可能性があります。そのため、設計時にこれらのリソースの制限を考慮するか、またはアカウントの制限を適宜増やします。サービスの制限に関する詳細については、AWS 全般リファレンスの「AWS サービスの制限」を参照してください。

注記

制限は Ec2Resource コンポーネントオブジェクトごとに 1 個のインスタンスです。

サポートされているプラットフォーム

パイプラインは、以下のプラットフォームでリソースを起動できます。

EC2-Classic

お客様のリソースは他のユーザー様と共有する単一のフラットネットワーク内で稼働します。

EC2-VPC

お客様のリソースはご自分の AWS アカウントから論理的に独立した Virtual Private Cloud (VPC) 内で稼働します。

AWS アカウントは、リソースを両方のプラットフォームで起動できるか、EC2-VPC だけで起動できるかが、リージョンごとに決まっています。詳細については、Linux インスタンス用 Amazon EC2 ユーザーガイドサポートされているプラットフォームを参照してください。

AWS アカウントで EC2-VPC のみがサポートされている場合は、各 AWS リージョンにデフォルトの VPC が作成されます。デフォルトでは、リソースはデフォルト VPC 内のデフォルトサブネットで起動されます。または、リソースの設定時に、デフォルト以外の VPC を作成し、サブネットのいずれかを指定することもできます。その場合、リソースは、指定されたデフォルト以外の VPC 内のサブネットで起動されます。

VPC でインスタンスを起動する場合は、その VPC 用に作成されたセキュリティグループを指定する必要があります。VPC でインスタンスを起動する場合、EC2-Classic 用に作成したセキュリティグループは指定できません。また、VPC のセキュリティグループを識別するセキュリティグループの名前ではなく、セキュリティグループの ID を使用する必要があります。

Amazon EMR クラスターと AWS Data Pipeline を使用した Amazon EC2 スポットインスタンス

パイプラインでは、Amazon EMR クラスターリソースのタスクノードとして Amazon EC2 スポットインスタンスを使用できます。デフォルトでは、パイプラインはオンデマンドインスタンスを使用します。スポットインスタンスでは、予備の EC2 インスタンスを使用して実行できます。スポットインスタンスという価格モデルは、オンデマンドインスタンス価格モデルやリザーブドインスタンス価格モデルを補完するものであり、アプリケーションによっては、コンピューティング性能を調達するうえで最もコスト効果の高い選択肢となる可能性があります。詳細については、Amazon EC2 スポットインスタンスの製品ページを参照してください。

スポットインスタンスを使用する場合、AWS Data Pipeline は、クラスターが起動されたときに、スポットインスタンスの上限価格を Amazon EMR に送信します。taskInstanceCount フィールドを使用して定義した数のスポットインスタンスのタスクノードに、クラスターの作業を自動的に割り当てます。AWS Data Pipeline では、タスクノードとしてのスポットインスタンスを制限することによって、スポットインスタンスの入札に成功しなかった場合、パイプラインを実行するためにオンデマンドコアノードを使用できます。

失敗または完了したパイプラインリソースインスタンスを編集してスポットインスタンスを追加できます。パイプラインがクラスターを再起動したときには、タスクノードとしてスポットインスタンスが使用されます。

スポットインスタンスに関する考慮事項

AWS Data Pipeline でスポットインスタンスを使用する場合、次の考慮事項が適用されます。

  • スポットインスタンスは、スポットインスタンスの価格がインスタンスの上限価格を超過したときや、Amazon EC2 の容量の理由で、終了することがあります。ただし、AWS Data Pipeline では、常にオンデマンドインスタンスであり、終了の対象ではないコアノードを含むクラスターを採用しているため、データは失われません。

  • スポットインスタンス、容量を非同期的に満たすため、開始までに時間がかかることがあります。したがって、スポットインスタンスのパイプラインは、同等のオンデマンドインスタンスのパイプラインより自動速度が遅くなる可能性があります。

  • 上限価格が低すぎるときなど、スポットインスタンスを取得できない場合、クラスターが実行されないことがあります。