AWS Data Pipeline 限制 - AWS Data Pipeline

AWS Data Pipeline 限制

为了确保所有用户的容量,AWS Data Pipeline 会对您可分配的资源以及资源分配速率施加限制。

账户限制

以下限制适用于单个 AWS 账户。如果您需要额外容量,可以使用 Amazon Web Services 支持中心请求表增加容量。

属性 限制 可调整
管线数量 100
每个管道的对象数量 100
每个对象的活动实例数量 5
每个对象的字段数量 50
每个字段名或标识符的 UTF8 字节数 256
每个字段的 UTF8 字节数 10240
每个对象的 UTF8 字节数 15360(包括字段名)
对象的实例创建速率 每 5 分钟一个
管道活动的重试次数 每个任务 5 次
重试之间的最短延迟 2 分钟
最短计划时间间隔 15 分钟
单个对象的累计最大数量 32
每个 Ec2Resource 对象的最大 EC2 实例数量 1

Web 服务调用限制

AWS Data Pipeline 将限制可调用 Web 服务 API 的速率。这些限制也适用于代表您调用 Web 服务 API 的 AWS Data Pipeline 代理,例如控制台、CLI 和任务运行程序。

以下限制适用于单个 AWS 账户。这意味着,该账户的总使用量(包括 用户产生的使用量)不能超过这些限制。

突增速率可让您在非活动期间节省 Web 服务调用并在很短的时间内扩展这些调用。例如,CreatePipeline 的常规速率为每 5 秒执行 1 次调用。如果在 30 秒内未调用该服务,则会节省 6 次调用。您可以随后在 1 秒内调用 6 次 Web 服务。由于该值低于突增限制并确保您的平均调用次数符合常规速率限制,因此,您的调用不受限制。

如果您超出速率限制和突增限制,则您的 Web 服务调用将失败并返回限制异常。任务运行程序工作线程的默认实施自动重试发生限制异常的失败 API 调用。任务运行程序使用退避,以便后续 API 调用尝试具有逐渐增加的间隔。如果您编写工作线程,我们建议您实施类似的重试逻辑。

针对单个 AWS 账户应用这些限制。

API 常规速率限制 突增限制
ActivatePipeline 每秒调用 1 次 100 次调用
CreatePipeline 每秒调用 1 次 100 次调用
DeletePipeline 每秒调用 1 次 100 次调用
DescribeObjects 每秒调用 2 次 100 次调用
DescribePipelines 每秒调用 1 次 100 次调用
GetPipelineDefinition 每秒调用 1 次 100 次调用
PollForTask 每秒调用 2 次 100 次调用
ListPipelines 每秒调用 1 次 100 次调用
PutPipelineDefinition 每秒调用 1 次 100 次调用
QueryObjects 每秒调用 2 次 100 次调用
ReportTaskProgress 每秒调用 10 次 100 次调用
SetTaskStatus 每秒调用 10 次 100 次调用
SetStatus 每秒调用 1 次 100 次调用
ReportTaskRunnerHeartbeat 每秒调用 1 次 100 次调用
ValidatePipelineDefinition 每秒调用 1 次 100 次调用

扩展注意事项

AWS Data Pipeline 扩展以满足大量并发任务,您可以将其配置为自动创建所需的资源以处理大型工作负载。这些自动创建的资源由您控制,并计入您的 AWS 账户资源限制。例如,如果您配置 AWS Data Pipeline 自动创建 20 个节点的 Amazon EMR 集群以处理数据,并且您的 AWS 账户的 EC2 实例限制设置为 20,您可能会无意中用尽可用的回填资源。因此,在设计中请考虑这些资源限制或相应增加您的账户限制。

如果您需要额外容量,可以使用 Amazon Web Services 支持中心请求表增加容量。