简介
存储桶复制是针对存储桶的一项配置,通过配置存储桶复制规则,可以在不同存储桶中自动、异步地复制增量对象。启用存储桶复制后,对象存储(Cloud Object Storage,COS)将精确复制源存储桶中的对象内容(如对象元数据和版本 ID 等)到目标存储桶中,复制的对象副本拥有完全一致的属性信息。此外,源存储桶中对于对象的操作,如添加对象、删除对象等操作,也将被复制到目标存储桶中。
注意
开启存储桶复制功能需要同时对源存储桶和目标存储桶均启用版本控制功能。
启用存储桶复制时,除非您在复制数据时明确指定了配置对象副本的存储类型,否则对象副本将保持与源对象相同的存储类型。
COS 复制时将复制源存储桶的访问控制列表(ACL),目前 COS 不支持两个不同账号的存储桶互为源存储桶和目标存储桶。
适用场景
异地容灾:COS 为对象数据提供了12个9的可用性,但仍然存在各种不可抗因素如战争、自然灾害等因素导致数据丢失。如果您无法忍受因数据丢失带来的损失,希望显式地在不同存储桶维护一份数据副本,那么您可以通过存储桶复制实现数据的异地容灾,当某个数据中心因为不可抗因素损毁时,另一个存储桶的数据中心仍然可以提供副本数据以供您使用。
合规性要求:COS 默认在物理盘中为数据提供多副本和纠删码等方式保障数据的可用性,但某些行业中可能存在合规性要求,规定您需要在不同的存储桶间保存数据副本。因此启用存储桶复制,可以实现在不同存储桶间复制数据以满足这些合规性要求。
减少访问延迟:当您的客户在不同地理位置访问对象时,您可以通过存储桶复制,在与客户地理位置最近的存储桶中维护对象副本,最大限度上缩短客户的访问延迟,有利于提高您的产品体验。
操作原因:如果您在两个不同存储桶中均具有计算集群,且这些计算集群需要处理同一套数据,则您可以通过存储桶复制在这两个不同的存储桶中维护对象副本。
数据迁移与备份:您可以根据业务发展需要,将业务数据从一个存储桶复制到另一个存储桶,实现数据迁移和数据备份。
注意事项
复制时间限制
COS 复制对象所需的时间取决于对象大小、存储桶地域间的距离,以及对象的上传方式等因素。同步时间根据上述因素差异,在几分钟到几小时内不等。
对象大小。大型对象的复制需要消耗更多的时间,对于大型对象而言,建议使用分块上传的方式以减少对象的上传和同步时间。
存储桶地域间的距离。地域间距离更远的同步需要消耗更多的数据传输时间。
对象上传方式。简单上传方式不能做并发,只能在一条连接上串行地上传或者下载数据,分块上传方式能够做并发,因此大文件上传时通过分块上传能够加速上传及存储桶复制。有关对象上传方式的详细介绍请参照 简单上传 和 分块上传 文档。 生命周期相关
存储桶复制需要用户开启版本控制功能。版本控制功能会使得存储桶中存在对象的多个历史版本,产生较多的存储消耗。COS 存储桶复制过程中需要消耗数据请求费用、下行流量成本以及数据存储成本。其中,数据存储成本跟随目标存储桶所在地域的存储成本定价。如果您希望减少由于存储桶复制和版本控制带来的成本,或者自定义数据保留方法,您可以结合您的行业背景,通过 生命周期管理 手段实现存储成本控制或者自定义数据保留方式。 如果您希望目标存储桶中的对象副本能够遵循和源存储桶中一样的生命周期规则,请在目标存储桶添加与源存储桶相同的生命周期规则。
如果您对目标存储桶设置了生命周期规则,需要注意存储桶复制后的对象副本的创建时间对应其在源存储桶中的创建时间,而非其出现在目标存储桶中的时间。
如果您在源存储桶中设置了生命周期规则,某个对象正在进行存储桶复制的同时需要被生命周期规则删除,则对象的存储桶复制仍会完成,目标存储桶中的对象副本仍然保留。
版本控制相关
存储桶复制配置需要用户在源存储桶和目标存储桶中均配置版本控制功能,版本控制功能的详细内容请详见 版本控制概述。开启版本控制后,需要注意关闭版本控制对存储桶复制功能的影响: 如果您尝试在已开启存储桶复制功能的存储桶中禁用版本控制,则 COS 会返回错误并提示您需要先删除存储桶复制规则后再禁用版本控制。
如果您尝试在一个目标存储桶中禁用版本控制,则 COS 会提示您关闭版本控制后存储桶复制功能将受影响,如果您仍确认关闭版本控制,则 COS 以该存储桶作为目标存储桶的存储桶复制规则将失效。
本页内容是否解决了您的问题?