同区域复制(Same-Region Replication)是指将源存储空间(Bucket)中的文件(Object)的创建、更新和删除等操作自动、异步(近实时)地复制到相同地域下的目标Bucket。
使用场景
当地法规遵从性规定不允许数据离开您的国家或地区时,您可以通过配置同区域复制规则将源Bucket的数据以副本的形式存储在相同地域内的多个目标Bucket。目标Bucket中的Object是源Bucket中Object的精确副本,它们具有相同的Object名、版本信息、元数据以及内容,例如创建时间、拥有者、用户定义的元数据、Object ACL、Object内容等。
功能特性
同区域复制支持特性如下:
相同地域Bucket之间的数据复制
源Bucket中的数据可以复制到相同地域的多个目标Bucket。单个Bucket关联的复制规则数量不能超过100条。这些规则中,该Bucket既可以作为源Bucket,也可以作为目标Bucket。
如果您的业务场景涉及更大数量的复制规则,请联系技术支持。
准实时复制数据
对于数据的新增、删除、修改等操作能够准实时复制到目标Bucket。
数据一致性
默认情况下,在源Bucket将数据复制到目标Bucket的过程中,OSS会保证两端数据的最终一致性。如果在复制过程中,您通过目标Bucket写入同名文件,OSS将无法保证两端数据的最终一致性。
历史数据迁移
支持将源Bucket配置复制关系后新写入的数据复制到目标Bucket的同时,还支持将未配置复制关系前的历史数据进行复制。
获取复制进度
能够针对复制数据展示最近复制的时间节点,针对历史数据的迁移展示迁移的百分比。
版本控制
对同时处于开启版本控制状态的源Bucket和目标Bucket,保证其数据版本的最终一致性。如果数据复制方式为写(增、改)同步,则源Bucket指定版本删除的操作不会复制到目标Bucket,源Bucket创建的删除标记会复制到目标Bucket。
复制加密数据
支持复制未加密的Object和使用SSE-KMS、SSE-OSS方式进行服务器端加密的Object。
配置事件通知
您可以通过在事件通知规则中,将事件类型配置为
ObjectReplication:ObjectCreated
、ObjectReplication:ObjectRemoved
以及ObjectReplication:ObjectModified
的方式,获取数据复制过程中源Bucket以及目标Bucket内Object的新增、更新、删除、覆盖等变化情况。详情请参见通过事件通知实时处理OSS文件变动。
注意事项
费用说明
以下费用说明适用于同账号或者跨账号同区域复制。
开启同区域复制后,同区域的两个Bucket之间复制文件时会产生数据流量,但暂不收取数据流量费用。
说明同区域复制产生的流量不占用OSS默认带宽。
开启同区域复制后,每复制一个Object,OSS都会累计请求次数,但暂不收取请求费用。
通过同区域复制将源Bucket中的归档类型Object复制到目标Bucket时,不涉及数据解冻操作,不收取归档存储数据取回容量费用。
复制时间
同区域数据复制采用异步(近实时)机制,将数据从源Bucket传输到目标Bucket的过程可能需要几分钟到几小时,具体时间取决于数据量的大小。如果复制过程耗时过长,建议检查是否存在带宽限制导致的复制任务延迟。如果确认为带宽问题,建议通过提交工单的方式申请提升带宽,以优化复制效率。
您可以通过OSS控制台记录各时段存储空间使用带宽。
页签下使用带宽区域查看同区域复制流入数据,该指标用于统计使用同区域复制功能时数据流入目标Bucket所使用的带宽。具体操作,请参见覆盖同名Object的风险
对于处于复制状态的两个Bucket,由于您可以同时操作这两个Bucket,源Bucket复制过去的Object可能存在覆盖目标Bucket中同名Object的风险。
使用限制
仅允许对同时处于非版本化或开启版本控制状态的两个Bucket开启同区域复制。
处于复制状态下的两个Bucket不允许改变其版本控制状态。
不支持将源Bucket中冷归档或者深度冷归档存储类型Object复制到目标Bucket。
不支持将源Bucket中Appendable类型的Object复制到冷归档存储类型的目标Bucket。
无地域属性Bucket之间的数据复制仅支持通过跨区域复制实现。更多信息,请参见跨区域复制概述。