复制对象 - Amazon Simple Storage Service
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

如果我们为英文版本指南提供翻译,那么如果存在任何冲突,将以英文版本指南为准。在提供翻译时使用机器翻译。

复制对象

复制操作将创建已存储在 中的对象的副本。Amazon S3. 在单个原子操作中,您可以创建最大 5 GB 的对象副本。但是,对于复制大于 5 GB 的对象,您必须使用分段上传 API。通过使用 copy 操作,您可以:

  • 创建对象的其他副本

  • 通过复制对象并删除原始对象来重命名它们。

  • 跨不同的 Amazon S3 位置(例如,us-west-1 和欧洲)移动对象

  • 更改对象元数据

    每个 Amazon S3 对象都带有元数据。它是一组名称值对。您可以在上传对象元数据时对其进行设置。上传对象后,您将无法修改对象元数据。修改对象元数据的唯一方式是创建对象的副本并设置元数据。在复制操作中,设置与源和目标相同的对象。

每个 对象都带有元数据。有些是系统元数据,而另外一些则是用户定义的元数据。用户可以控制某些系统元数据,例如,用于对象的存储类配置和配置服务器端加密。在复制对象时,还复制用户控制的系统元数据和用户定义的元数据。Amazon S3 会重置系统控制的元数据。例如,在复制对象时,Amazon S3 将重置已复制对象的创建日期。在复制请求中,您无需设置这些值。

复制对象时,您可能会决定更新某些元数据值。例如,如果您的源对象被配置为使用标准存储,您可能会为对象复制选择低冗余存储。您可能还会决定更改源对象上某些用户定义的元数据值。请注意,如果您选择在复制期间更新任意对象的用户可配置元数据 (系统或用户定义的元数据),则必须显式指定请求中源对象上存在的所有用户可配置的元数据,即使您只更改其中一个元数据值也是如此。

有关对象元数据的详细信息,请参阅 对象键和元数据.

注意

复制对象时,您可以请求AmazonS3保存加密的目标对象 AWS Key Management Service (AWS KMS)客户主密钥(CMK), Amazon S3-managedencryptionkey,或客户提供的加密密钥。因此,您必须在请求中指定加密信息。如果拷贝源是存储在 Amazon S3 使用与客户提供的密钥的服务器端加密,您需要在请求中提供加密信息 Amazon S3 可解密对象以进行复制。有关更多信息,请参阅 使用加密保护数据.

复制多个 Amazon S3 对象具有单个请求,您可以使用 Amazon S3 批次操作。 您为 S3 批量操作 提供要操作的对象的列表。 S3 批量操作 调用相应的 API 来执行指定的操作。单个 S3 批量操作 作业可对包含 EB 级数据的数十亿个对象执行指定操作。

S3 批量操作 可跟踪进度、发送通知并存储所有操作的详细完成报告,从而提供完全托管的、可审计的无服务器体验。您可以通过 AWS 管理控制台、AWS CLI、AWS 开发工具包或 REST API 使用 S3 批量操作。有关更多信息,请参阅基础知识:S3 批量操作

相关资源