好消息!Cloudflare R2 Storage 即將隆重推出!開發(fā)人員可以存儲大量非結(jié)構(gòu)化數(shù)據(jù),不僅 Cloudflare 的能力得以拓展,與典型云存儲服務(wù)相關(guān)的出口帶寬費用也直減到零。
Cloudflare R2 Storage 可以全面兼容 S3 API,并且支持現(xiàn)有的原生工具和應(yīng)用程序?,F(xiàn)在,讓我們一起來仔細了解 R2。
R2 意味著“真正的可請求性”
對象存儲有時也稱為 Blob 存儲,可以存儲任意的大型非結(jié)構(gòu)化文件。對象存儲非常適合存儲媒體文件、日志文件以及應(yīng)用程序特定元數(shù)據(jù)等一切內(nèi)容,不僅可以檢索,還具有延遲一致、持久性高和容量無限的特點。
最為熟悉的對象存儲 API 以及 API R2 是亞馬遜的簡易存儲服務(wù)(Simple Storage Service,S3)。在 2006 年 S3 推出之時,云存儲服務(wù)對開發(fā)人員來說簡直就是天賜之物。并且在過去十五年里,開發(fā)人員已經(jīng)接受了云存儲及其無限存儲空間的功能。
云存儲帶來的不僅是變革,也有不利影響:真正取回您的數(shù)據(jù)所需要的高昂花費。隨著時間推移,公司在云提供商網(wǎng)絡(luò)上積聚了海量數(shù)據(jù)。在需要取回那些數(shù)據(jù)時,他們將面臨高昂的出口費用,而且沒有客戶價值與之對應(yīng),只是開發(fā)人員習(xí)以為常的一項開支。
這時,R2 應(yīng)運而生。
傳統(tǒng)的對象存儲向開發(fā)者收取三項費用:帶寬、存儲大小和存儲操作。
R2 基于 Cloudflare 對帶寬聯(lián)盟的承諾而構(gòu)建,為存儲對象提供零成本出口,與您的請求率無關(guān)。出口帶寬通常是開發(fā)人員使用對象存儲的最大費用,也是最難預(yù)測的費用。消除這項費用是對存儲在云端的數(shù)據(jù)開放訪問的巨大勝利。
這并不表示我們將帶寬費用轉(zhuǎn)嫁到別處。Cloudflare R2 的價格將定為每月每 GB 存儲的數(shù)據(jù) 0.015 美元,比主流供應(yīng)商便宜得多。
對于提供商來說,對對象訪問不頻繁時通常微不足道,但每次操作都會產(chǎn)生相同的費用。我們認為,典型的對象存儲要求開發(fā)人員每秒發(fā)出一個請求時的價格與企業(yè)每秒發(fā)出數(shù)千個請求的價格相同是非常不公平的(當考慮協(xié)商的批量折扣時,開發(fā)人員經(jīng)常面臨更高的價格)。
另一方面,為不頻繁訪問而設(shè)計的提供商通常無法擴展到大量使用。
R2 將在某個閾值下對不頻繁的存儲操作實現(xiàn)零費率,目前計劃將閾值設(shè)在每秒個位數(shù)請求范圍內(nèi)。此范圍以上,R2 的每項操作收費將明顯低于主要提供商。我們的對象存儲對于不頻繁的訪問情況將非常便宜,并且在規(guī)模上比現(xiàn)有的主要提供商更有能力和更便宜。
這一更便宜的價格并沒有降低可擴展性。在后臺,R2 自動智能管理數(shù)據(jù)分層,以在峰值負載時提高性能,并為不經(jīng)常請求的對象降低成本。我們已經(jīng)擺脫了復(fù)雜的手動分層策略,轉(zhuǎn)而支持開發(fā)人員一直希望從對象存儲中得到的好處:以盡可能低的成本實現(xiàn)無限的規(guī)模。
R2 意味著“重新定位記錄”
零出口費用意味著您可以輕松取出對象,但是放入對象又如何呢?即便雙方都全面支持 S3 API,在云提供商之間遷移數(shù)據(jù)也容易出錯且代價昂貴。
Cloudflare R2 將附帶從其他 S3 兼容云存儲服務(wù)自動遷移的功能,使用起來十分方便,也不需要您更改自己的任何工具。遷移過程設(shè)計的非常簡單。指定現(xiàn)有的存儲桶后,R2 將對現(xiàn)有桶中的對象發(fā)出請求,僅一次輸出對象即可供 R2 復(fù)制和提供。從打開 Cloudflare 儀表板上的開關(guān)那一刻起,我們易于使用的遷移程序就開始幫您節(jié)省出口費用。
我們的 R2 愿景包括多地區(qū)存儲,自動將對象復(fù)制到它們經(jīng)常被請求的位置。與 Durable Objects 一樣,我們計劃引入司法管轄區(qū)限制,讓開發(fā)人員能夠借助一個簡單的 API 來遵循復(fù)雜的數(shù)據(jù)主權(quán)要求。
R2 意味著“無與倫比的可靠性”
對象存儲的精髓在于可靠性,R2 的設(shè)計中心思想正是數(shù)據(jù)持久性和可靠性。R2 將提供 99.999999999%(11 個 9)的年持久性(即數(shù)據(jù)丟失的可能性)。如果您在 R2 上存儲 100 萬個對象,那么您可以預(yù)期每 10 萬年才可能丟失一個,與其他主要提供商的持久性水平相同。R2 可以抵御區(qū)域性故障,通過多次復(fù)制對象獲得高可用性。
R2 的設(shè)計具有跨大量區(qū)域的冗余,以保證可靠性。我們計劃從自動全球分布開始,并在數(shù)據(jù)必須存儲到本地時再重新添加地區(qū)相關(guān)的控制,如上所述。
R2 意味著“無與倫比的可再編程性”
R2 與 Cloudflare Workers 無服務(wù)器運行時全面集成。您可以將 Worker 綁定到特定的存儲桶,在寫入存儲桶或從中讀取時對對象進行動態(tài)轉(zhuǎn)換。Workers 與 R2 的深度集成使構(gòu)建數(shù)據(jù)管道和操作對象變得易如反掌。
Cloudflare R2 設(shè)計為可與其余 Cloudflare 產(chǎn)品輕松集成。譬如,我們計劃允許 Durable Objects 將 R2 配置為備份目標,并提供 R2 和 Cloudflare 緩存之間的自動集成,大大延長不常改變的對象的緩存壽命。
您可以利用 Cloudflare R2 做些什么?
通過長期存儲,您就可以大有作為了,加上 Workers 計算平臺從旁協(xié)助就更是如此了。
例如,通過使用 R2,從大量 IoT 設(shè)備串流數(shù)據(jù)會變得無比得心應(yīng)手。從利用 Worker 轉(zhuǎn)換和操作數(shù)據(jù)開始,R2 可以低成本攝取和存儲海量傳感器數(shù)據(jù)。由于沒有出口費用,因此可以根據(jù)需要將海量數(shù)據(jù)輕松遷移到多個數(shù)據(jù)庫和分析解決方案,大幅降低存儲成本。加上還能對傳出數(shù)據(jù)運行 Worker,數(shù)據(jù)管道本身也變得更加靈活。
R2 也是存儲 CDN 資源和大型媒體文件的理想場所。對于大型文件,R2 可以大幅延長緩存生命周期,同時大大削減出口費用。結(jié)合 Cache API 和 Workers,可對內(nèi)容進行動態(tài)緩存,實現(xiàn)全球范圍內(nèi)的低延遲訪問。
最重要的是,R2 沒有出口帶寬費用,因此是存儲不頻繁訪問內(nèi)容的理想選擇。如今,R2 的規(guī)模能夠妥善處理繁重的請求負載,對您的對象進行動態(tài)分級,以最低的成本帶來最高的性能。有了這種動態(tài)分級,我們可以提供最低的價格,并支持最高的性能,而且無需用戶進行任何配置。
使用 Cloudflare R2
R2 目前正在開發(fā)之中,您可以在這里報名以加入等候名單。我們非常樂意與廣大早期用戶合作,對產(chǎn)品進行調(diào)優(yōu)和測試。我們很快會進行公測,屆時任何用戶都能報名體驗服務(wù)。
我們很高興能繼續(xù)打造這款產(chǎn)品并推向公測,也對 Cloudflare 邊緣存儲的未來有著美好憧憬。如果您是分布式系統(tǒng)工程師并想幫助我們共創(chuàng)邊緣之未來,那就加入我們吧!