隆重推出 Cloudflare R2 Storage!开发人员可以存储大量非结构化数据,不仅 Cloudflare 的能力得以拓展,与典型云存储服务相关的出口带宽费用也直减到零。

Cloudflare R2 Storage 全面兼容 S3 API,并且原生支持现有的工具和应用程序。

我们一起来仔细了解 R2。

R2 意味着“真正的可请求性”

对象存储有时也称为 Blob 存储,可以存储任意的大型无非结构化文件。对象存储非常适合存储从媒体文件、日志文件到应用程序特定元数据等一切内容,不仅可以检索,还具有延迟一致、持久性高和容量无限的特点。

最为熟悉的对象存储 API 以及 API R2 是亚马逊的简易存储服务(Simple Storage Service,S3)。在 2006 年 S3 推出之时,云存储服务对开发人员来说简直就是天赐之物。变化不是一夜之间发生的,但在过去十五年里,开发人员已经接受了云存储及其无限存储空间的承诺。

云存储带来的不仅是变革,也有不利影响:真正取回您的数据。随着时间推移,公司在云提供商网络上积聚了海量数据。在需要取回那些数据时,他们将面临高昂的出口费用,而且没有客户价值与之对应,只是开发人员习以为常的一项开支。

R2 应运而生。

Cloudflare R2 意味着取消离谱的费用

传统的对象存储向开发者收取三项费用:带宽、存储大小和存储操作。

R2 基于 Cloudflare 对带宽联盟的承诺而构建,为存储对象提供零成本出口,与您的请求率无关。出口带宽通常是开发人员使用对象存储的最大费用,也是最难预测的费用。消除这项费用是对存储在云端的数据开放访问的巨大胜利。

这并不表示我们将带宽费用转嫁到别处。Cloudflare R2 的价格将定为每月每 GB 存储的数据 0.015 美元,比主流供应商便宜得多。

对于提供商来说,对对象访问不频繁时通常微不足道,但每次操作都会产生相同的费用。我们认为,典型的对象存储要求开发人员每秒发出一个请求时的价格与企业每秒发出数千个请求的价格相同是非常不公平的(当考虑协商的批量折扣时,开发人员经常面临更高的价格)。

另一方面,为不频繁访问而设计的提供商通常无法扩展到大量使用。

R2 将在某个阈值下对不频繁的存储操作实现零费率,目前计划将阈值设在每秒个位数请求范围内。此范围以上,R2 的每项操作收费将明显低于主要提供商。我们的对象存储对于不频繁的访问情况将非常便宜,但在规模上比主要的现有提供商更有能力和更便宜。

这一更便宜的价格并没有降低可扩展性。在后台,R2 自动智能管理数据分层,以在峰值负载时提高性能,并为不经常请求的对象降低成本。我们已经摆脱了复杂的手动分层策略,转而支持开发人员一直希望从对象存储中得到的好处:以尽可能低的成本实现无限的规模。

R2 意味着“重新定位记录”

零出口费用意味着您可以轻松取出对象,但是放入对象又如何呢?即便双方都全面支持 S3 API,在云提供商之间迁移数据也容易出错且代价昂贵。

Cloudflare R2 将附带从其他 S3 兼容云存储服务自动迁移的功能,使用起来十分方便,也不需要您更改自己的任何工具。迁移过程设计得简单至极。指定现有的存储桶后,R2 将对现有桶中的对象发出请求,仅一次输出对象即可供 R2 复制和提供。从打开 Cloudflare 仪表板上的开关那一刻起,我们易于使用的迁移程序就开始帮您节省出口费用。

R2 自动从收取高额出口带宽费用的供应商处复制数据,只有一个目标桶配置,立即节省您的资金。

我们的 R2 愿景包括多地区存储,自动将对象复制到它们经常被请求的位置。与 Durable Objects 一样,我们计划引入司法管辖区限制,让开发人员能够借助一个简单的 API 来遵循复杂的数据主权要求。

R2 意味着“无与伦比的可靠性”

对象存储的精髓在于可靠性,R2 的设计中心思想正是数据持久性和可靠性。R2 将提供 99.999999999%(11 个 9)的年持久性(即数据丢失的可能性)。如果您在 R2 上存储 100 万个对象,那么您可以预期每 10 万年才可能丢失一个,与其他主要提供商的持久性水平相同。R2 可以抵御区域性故障,通过多次复制对象获得高可用性。

R2 的设计具有跨大量区域的冗余,以保证可靠性。我们计划从自动全球分布开始,并在数据必须存储到本地时再重新添加地区相关的控制,如上所述。

R2 意味着“无与伦比的可再编程性”

R2 与 Cloudflare Workers 无服务器运行时全面集成。您可以将 Worker 绑定到特定的存储桶,在写入存储桶或从中读取时对对象进行动态转换。Workers 与 R2 的深度集成使构建数据管道和操作对象变得易如反掌。

Cloudflare R2 设计为可与其余 Cloudflare 产品轻松集成。譬如,我们计划允许 Durable Objects 将 R2 配置为备份目标,并提供 R2 和 Cloudflare 缓存之间的自动集成,大大延长不常改变的对象的缓存寿命。

您可以利用 Cloudflare R2 做些什么?

通过长期存储,您就可以大有作为了,加上 Workers 计算平台从旁协助就更是如此了。

例如,通过使用 R2,从大量 IoT 设备串流数据会变得无比得心应手。从利用 Worker 转换和操作数据开始,R2 可以低成本摄取和存储海量传感器数据。由于没有出口费用,因此可以根据需要将海量数据轻松迁移到多个数据库和分析解决方案,大幅降低存储成本。加上还能对传出数据运行 Worker,数据管道本身也变得更加灵活。

R2 也是存储 CDN 资源和大型媒体文件的理想场所。对于大型文件,R2 可以大幅延长缓存生命周期,同时大大削减出口费用。结合 Cache API 和 Workers,可对内容进行动态缓存,实现全球范围内的低延迟访问。

最重要的是,R2 没有出口带宽费用,因此是存储不频繁访问内容的理想选择。如今,R2 的规模能够妥善处理繁重的请求负载,对您的对象进行动态分级,以最低的成本带来最高的性能。有了这种动态分级,我们可以提供最低的价格,并支持最高的性能,而且无需用户进行任何配置。

使用 Cloudflare R2

R2 目前正在开发之中,您可以在这里报名以加入等候名单。我们非常乐意与广大早期用户合作,对产品进行调优和测试。我们很快会进行公测,届时任何用户都能报名体验服务。

我们很高兴能继续打造这款产品并推向公测,也对 Cloudflare 边缘存储的未来有着美好憧憬。如果您是分布式系统工程师并想帮助我们共创边缘之未来,那就加入我们吧