AWS Data Pipeline の制限 - AWS Data Pipeline

AWS Data Pipeline の制限

AWS Data Pipeline は、リソースの割り当て量と割り当てレートを制限することで、すべてのユーザーが容量を利用できるようにします。

アカウントの制限

AWS アカウントごとに以下の制限が適用されます。追加の容量が必要な場合は、Amazon Web Services サポートセンターの申請フォームを使用して容量を増やすことができます。

属性 制限 引き上げ可能
パイプラインの数 100 Yes
パイプラインあたりのオブジェクトの数 100 Yes
オブジェクトあたりのアクティブなインスタンスの数 5 はい
オブジェクトあたりのフィールドの数 50 No
フィールド名前または ID あたりの UTF8 バイトの数 256 No
フィールドあたりの UTF8 バイトの数 10,240 No
オブジェクトあたりの UTF8 バイトの数 15,360 (フィールド名を含む) No
オブジェクトからのインスタンス作成レート 5 分に 1 回 No
パイプラインアクティビティの再試行 タスクにつき 5 回 No
再試行間の最小遅延間隔 2 分 No
最小スケジュール間隔 15 分 No
単一のオブジェクトへのロールアップの最大数 32 No
Ec2Resource オブジェクトあたりの EC2 インスタンスの最大数 1 No

ウェブサービス呼び出しの制限

AWS Data Pipeline は、お客様がウェブサービス API を呼び出すことのできるレートを制限しています。これらの制限は、お客様に代わってウェブサービス API を呼び出すコンソール、CLI、Task Runner などの AWS Data Pipeline エージェントにも適用されます。

AWS アカウントごとに以下の制限が適用されます。これは、 ユーザーによる使用も含むアカウント全体の使用量がこれらの制限を超えてはならないことを意味します。

バーストレートを使用すると、アイドル状態の期間においてウェブサービス呼び出しを節約し、短期間にそれらすべてを消費できます。たとえば、CreatePipeline の通常レートは 5 秒に 1 回の呼び出しです。サービスを 30 秒間呼び出さなければ、6 回の呼び出しが節約されます。その後、ウェブサービスを 1 秒間に 6 回呼び出すことができます。これはバースト制限を超えず、呼び出しの平均間隔が通常のレートの制限内であるため、呼び出しはスロットリングされません。

レートの制限を超えると、ウェブサービス呼び出しは失敗し、スロットリング例外が返されます。Task Runner (ワーカー) のデフォルト実装では、スロットリング例外で失敗した API 呼び出しを自動的に再試行します。Task Runner にはバックオフがあるため、以降の API 呼び出しの試行間隔は徐々に長くなります。ワーカーを記述する場合は、同じような再試行ロジックを実装することをお勧めします。

これらの制限は、個々の AWS アカウントに対して適用されます。

API 通常のレートの制限 バースト制限
ActivatePipeline 1 秒につき呼び出し 1 回 呼び出し 100 回
CreatePipeline 1 秒につき呼び出し 1 回 呼び出し 100 回
DeletePipeline 1 秒につき呼び出し 1 回 呼び出し 100 回
DescribeObjects 1 秒につき呼び出し 2 回 呼び出し 100 回
DescribePipelines 1 秒につき呼び出し 1 回 呼び出し 100 回
GetPipelineDefinition 1 秒につき呼び出し 1 回 呼び出し 100 回
PollForTask 1 秒につき呼び出し 2 回 呼び出し 100 回
ListPipelines 1 秒につき呼び出し 1 回 呼び出し 100 回
PutPipelineDefinition 1 秒につき呼び出し 1 回 呼び出し 100 回
QueryObjects 1 秒につき呼び出し 2 回 呼び出し 100 回
ReportTaskProgress 1 秒につき呼び出し 10 回 呼び出し 100 回
SetTaskStatus 1 秒につき呼び出し 10 回 呼び出し 100 回
SetStatus 1 秒につき呼び出し 1 回 呼び出し 100 回
ReportTaskRunnerHeartbeat 1 秒につき呼び出し 1 回 呼び出し 100 回
ValidatePipelineDefinition 1 秒につき呼び出し 1 回 呼び出し 100 回

スケーリングに関する考慮事項

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

追加の容量が必要な場合は、Amazon Web Services サポートセンターの申請フォームを使用して容量を増やすことができます。