本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
分段上传大型档案(分段上传)
分段上传流程
如在 Amazon S3 Glacier 中上传档案中所述,我们鼓励 Amazon S3 Glacier (S3 Glacier) 客户使用分段上传来上传大于 100 MB 的档案。
-
Initiate Multipart Upload
当您发送请求以启动分段上传时,S3 Glacier 返回分段上传 ID,它是您分段上传的唯一标识符。后续的任何分段上传操作均需要此 ID。S3 Glacier 完成作业后,此 ID 至少在 24 小时内都不会过期。
在您启动分段上传的请求中,请指定段大小(以字节数为单位)。除了最后一段以外,您上传的每一段都必须为此大小。
注意 使用分段上传时,您不需要知道整个档案大小。这意味着,在开始上传档案时,您可以在不知道档案大小的情况下使用分段上传。您只需在启动分段上传时决定段大小即可。
此外,在启动分段上传请求中,您还可以提供可选的档案描述。
-
上传段
对于每个段上传请求,您必须包括您在步骤 1 中获取的分段上传 ID。此外,在请求中,您还必须指定标识段在最终档案中的位置的内容范围(以字节为单位)。 S3 Glacier 稍后会使用内容范围信息来以适当顺序拼组档案。由于您提供了上传的每一段的内容范围,因此,它会确定段在最终档案汇编中的位置,进而,您可以任何顺序上传段。此外,您还可以并行上传段。如果您使用与之前上传的段相同的内容范围上传新段,则之前上传的段会被覆盖。
-
完成(或停止)多部件上传
上传所有档案段后,您可以使用完成操作。此外,您还必须在请求中指定上传 ID。S3 Glacier 将通过根据您提供的内容范围按升序连接段来创建档案。S3 Glacier 对“完成分段上传”请求的响应包括新创建的档案的档案 ID。如果您在“启动分段上传”请求中提供了可选的档案描述,则 S3 Glacier 会将它与拼组的档案相关联。成功完成分段上传后,您无法引用该分段上传 ID。这意味着,您无法访问与该分段上传 ID 相关联的段。
如果您停止多成分上传,则不能使用该多成分上传ID上传更多成分。与已停止的多部件上传关联的任何部件所消耗的所有存储都将被释放。如果任何部件上传正在进行,即使停止后,它们仍可以成功或失败。
附加分段上传操作
Amazon S3 Glacier (S3 Glacier) 提供了以下附加分段上传 API 调用。
-
列出段 — 利用此操作,您可以列出特定分段上传的段。它会返回有关您为分段上传上传的段的信息。对于每个“列出段”请求,S3 Glacier 最多返回 1000 段的信息。如果有更多段要为分段上传列出,则结果会分页,并且响应中会返回一个指示要从其所在位置继续列表的标记。您需要发送附加请求来取回后续的段。请注意,返回的段列表不包括未完成上传的段。
-
列出分段上传 — 利用此操作,您可以获取正在进行的分段上传的列表。正在进行的多部分上传是您发起的但尚未完成或停止的上传。对于每个列出分段上传请求,S3 Glacier 最多会返回 1000 个分段上传。如果有更多分段上传要列出,则结果会分页,并且响应中会返回一个指示要从其所在位置继续列表的标记。您需要发送附加请求来取回剩余的分段上传。
快讯
下表提供了分段上传的核心规范。
项目 | 规范 |
---|---|
最大档案大小 | 10 000 x 4 GB |
每次上传的分段的最大数量 | 10,000* |
分段大小 |
1MB 到 4GB,最后一段可以 < 1MB。您可以指定大小值(以字节为单位)。 段大小必须为 1 兆字节 (1024KB) 乘以 2 的幂。例如, |
列出分段请求返回的分段的最大数量 | 1000。 |
在列出分段上传请求中返回的分段的最大数量 | 1000。 |