对象存储产品文档之:如何将数据迁移或同步到OSS
SpeedyCOS是迅达云提供的海量、安全、低成本、高可靠的云存储服务。SpeedyCOS适用各行业、各类场景、各种文件的存储需求。它具有与平台无关的RESTful API接口,能够提供99.99999999%的服务持久性。您可以在任何应用、任何时间、任何地点存储和访问任意类型的数据。客户在使用SpeedyCOS的过程中,会遇到将历史数据迁移到SpeedyCOS上,或在SpeedyCOS不同Bucket间进行数据同步。下面介绍一些数据迁移、数据同步的推荐方式。
数据迁移
需求定义:
- 用户希望将历史数据,迁移到用户在SpeedyCOS的某个目标Bucket上。
- 其中,需要迁移的源数据,可能来自于SpeedyCOS的某个Bucket,也可以来自于本地、第三方云存储(如AWS S3、Azure Blob、腾讯云COS、七牛、百度BOS、阿里云、又拍云、金山KS3等)、HTTP等。
主要方法:
- 命令行工具,进行迁移。
- SpeedyCOS跨区域复制功能:在控制台中,对源Bucket进行跨区域复制配置,详细操作请参考设置跨区域复制。
- SpeedyCOS API或SDK:使用SpeedyCOS API或SDK编写代码实现,详细请参考Copy Object、Upload Part Copy。
场景1-将非SpeedyCOS上的数据,迁移到SpeedyCOS中
说明:迁往目的地是SpeedyCOS上的Bucket,而源数据不是存储在SpeedyCOS上,比如在本地、HTTP,第三方云存储(如AWS S3、Azure Blob等)。
- 什么时候选择设置跨区域复制?
- 不适用 - 什么时候选择SpeedyCOS API/SDK Copy Object、Upload Part Copy?
- 数据源是本地:使用SpeedyCOS API/SDK 开发代码
- 数据源是HTTP、第三方云存储:需要客户编写代码从数据源下载数据,并使用SpeedyCOS API/SDK 编写代码上传SpeedyCOS
场景2-SpeedyCOS之间的数据迁移,将SpeedyCOS源Bucket数据,迁移到SpeedyCOS目标Bucket中
说明:迁移的数据源和迁移目的地都是SpeedyCOS的Bucket。
- 什么时候选择设置跨区域复制?
- 源Bucket和目标Bucket属于同一个用户,且分属不同的区域 - 源Bucket、目标Bucket存储类型属于以下情况之一:
- 源Bucket是标准存储,目标Bucket是标准存储
- 源Bucket是标准存储,目标Bucket是低频存储
- 源Bucket是低频存储,目标Bucket是标准存储
- 源Bucket是低频存储,目标Bucket是低频存储
备注:
1.跨区域复制操作很简单,在控制台进行设置时,勾选同步历史数据,参考文档跨区域复制
2.如果希望源Bucket历史数据迁移(复制到)目标Bucket后,源Bucket的变更(新增、更新、删除)不再同步到目标Bucket,可以在控制台关闭源Bucket的跨区域复制。
- 什么时候选择SpeedyCOS API/SDK Copy Object、Upload Part Copy?
- 其他相对可适用的情况:
- 源Bucket、目标Bucket都属于同一区域
- 源Bucket或目的Bucket的类型是归档存储
常见疑问:
使用SpeedyCOS API/SDK,跨区域复制不适用
数据同步
需求定义:
用户希望,使其拥有的SpeedyCOS上两个不同的Bucket之间,自动、异步复制Object源Bucket中的对象的改动(新建、覆盖、删除等)持续且自动地同步到目标Bucket。
主要方法:
- SpeedyCOS跨区域复制功能,在控制台中,对源Bucket进行跨区域复制配置,详细操作请参考设置跨区域复制。
- 使用SpeedyCOS API或SDK编写代码实现,详细请参考Copy Object、Upload Part Copy。
场景1-跨区域同步
说明:当源Bucket和目的Bucket分属不同的区域。
- 什么时候选择设置跨区域复制?
- 源Bucket是标准存储,目标Bucket是标准存储
- 源Bucket是标准存储,目标Bucket是低频存储
- 源Bucket是低频存储,目标Bucket是标准存储
- 源Bucket是低频存储,目标Bucket是低频存储
备注:这些情况下,客户也可以使用SpeedyCOS API/SDK编写代码,实现同步,但不推荐。 - 什么时候选择SpeedyCOS API/SDK Copy Object、Upload Part Copy?
- 源Bucket是标准存储,目标Bucket是归档存储
- 源Bucket是低频存储,目标Bucket是归档存储
- 源Bucket是归档存储,目标Bucket是标准存储
- 源Bucket是归档存储,目标Bucket是低频存储
- 源Bucket是归档存储,目标Bucket是归档存储
备注:由于归档存储存在恢复时间,如果客户在应用中,需要由归档存储,向标准或低频存储间同步,建议采用更合理的架构,将标准或低频存储改作为主(源)Bucket进行使用,归档存储改作为从(目标)Bucket,节省成本,提高业务效果。
常见疑问:
1.是否支持指定Bucket下特定目录而非整个Bucket间进行同步?
可以,通过设置指定文件名前缀进行同步,控制只同步特定目录
2.归档存储是否可以使用设置跨区域复制功能?
当源Bucket或目的Bucket是归档存储时,不支持设置跨区域复制。用户可以使用SpeedyCOS API/SDK,编写代码,以实现同步。
但由于归档存储存在恢复时间,如果客户在应用中,需要由归档存储,向标准或低频存储间同步,建议将标准或低频存储改作为主(源)Bucket进行使用,归档存储改作为从(目标)Bucket,采用更合理的架构,节省成本,提高业务效果
场景2-同区域同步
说明:当源Bucket和目的Bucket属于同一的区域。
- 什么时候选择设置跨区域复制?
- 不适用,SpeedyCOS跨区域复制功能不支持同一区域的两个Bucket间数据同步。 - 什么时候选择SpeedyCOS API/SDKCopy Object、Upload Part Copy?
- 同一区域的Bucket间数据同步,可通过使用SpeedyCOS API/SDK编写代码实现。
常见疑问:
1.如果只是需要源Bucket的历史数据,迁移或复制到目标Bucket,而不需要将后续的持续改动同步到目标Bucket,有没有比使用SpeedyCOS API/SDK 更方便的方案?
- 可以, 这种情况属于数据迁移的情况,可以参考前文关于数据迁移的方案介绍。