在云对象存储提供商之间迁移数据可能既具有挑战性又代价高昂。您需要确保没有遗漏任何对象,特别是在迁移过程中有新数据持续写入的情况下。此外,还需要考虑可能产生的一次性数据传输费用。
为了应对这些挑战,Cloudflare 创建了两款迁移工具:Sippy 和 Super Slurper。Sippy 是一项按需数据迁移服务,也是本参考架构图的主要关注点。另一方面,Super Slurper 专为向 Cloudflare 全球对象存储服务 R2 进行大规模一次性迁移而设计。由于一次性迁移所有数据可能并不适合您的场景,Sippy 可以帮助您应对这种情况。
Sippy 允许您在数据被请求时将数据从其他云提供商传输到 Cloudflare R2。此工作流非常适合希望避免大额前期数据传输费用并按访问需求选择性迁移数据的场景。
通过在应用程序请求流中利用请求来同时将对象复制到 R2(此时您已在向其他供应商支付出口费用),可降低使用其他供应商云存储时产生的迁移专项出口费用。
使用 Sippy 迁移您的常用访问数据对象,并立即开始节省出口费用。然后,使用 Super Slurper 迁移剩余数据。
Sippy 的工作方式如下:它首先尝试从 R2 存储中检索对象。如果 R2 中不存在该对象,它将从您的源云对象存储中检索。同时,它将把该对象添加到 R2 以供将来访问,确保数据迁移过程无缝高效。
- 客户端使用 Workers、S3 API 或公共存储桶从 R2 请求对象。
- 如果对象在您的 R2 存储桶中找到,则将其提供给客户端。
- 如果对象在 R2 中未找到,该对象将同时从您的源存储桶返回并复制到 R2。注意:由于某些大型对象是以分片上传方式复制的,可能需要多次请求才能复制到 R2。从客户端角度来看,它们仍会获取所请求的文件。
对象复制完成后,后续请求将从 R2 提供服务,您将立即开始节省出口费用。