物件儲存體最適合大量非結構化資料,而區塊儲存體則針對經常存取的少量資料進行了最佳化。
閱讀本文後,您將能夠:
複製文章連結
物件儲存體和區塊儲存體是兩種類型的雲端儲存體,也就是可以透過網際網路連線存取的遠端資料儲存體。物件儲存體具有高度可擴展性和可自訂性,但速度並非總是很快。區塊儲存體的速度很快,但通常比物件儲存體更昂貴。哪一個更適合組織的使用案例取決於許多因素。整體而言,物件儲存體通常用於大量非結構化資料,而區塊儲存體最適合處理交易資料和經常需要擷取的小型檔案。
將區塊儲存體想像成一個提供代客泊車服務的緊湊型停車庫,而物件儲存體是一個擁有數英畝空間的大型開放式停車場。正如我們所說的那樣,區塊儲存體停車庫可讓駕駛員快速取回他們的汽車;但它的車輛空間有限,並且擴大容量將涉及建造一個新的車庫和僱用更多的代客泊車員,成本昂貴。相比之下,物件儲存體停車場允許盡可能多的駕駛員停放車輛。但是,某些汽車可能停放在停車場的遠端,駕駛員可能需要一些時間才能取回汽車。
區塊儲存體將檔案和資料分割成同等大小的區塊。每個區塊都有一個唯一識別碼,儲存在資料查找表中。當需要擷取資料時,資料查找表被用於查找所需的區塊,然後將其重新組裝為其原始形式。
這樣想一想:資料查找表就像是鑰匙盒,供代客泊車員保管每一輛汽車的鑰匙。當駕駛員需要他們的汽車時,代客泊車員拿著鑰匙並查找汽車所在的位置,以便快速取回汽車。同樣地,區塊儲存體使用儲存在資料查找表中的唯一識別碼來快速尋找和擷取資料。
區塊儲存體的速度很快,而且通常適用於定期需要從後端載入資料的應用程式。
物件儲存體是一種保存大量非結構化資料的方法,包括感應器資料、音訊檔案、記錄、影片和照片內容、網頁和電子郵件。每個檔案或資料區段都會被儲存為「物件」,且每個物件都包含中繼資料和唯一名稱或識別碼,以供資料擷取使用。(想像一下,駕駛員如何在大型停車場寫下他們的車位號碼,以便記住他們的車輛位置。)
所有物件都會一起被儲存在「資料湖泊」(也稱為「資料集區」)中。資料湖泊是平坦的,沒有檔案階層,就像大型停車場是平坦的,沒有坡道或其他樓層一樣。
功能 | 區塊儲存體 | 物件儲存體 |
---|---|---|
儲存容量 | 限量 | 幾乎無限 |
儲存方法 | 資料儲存在固定大小的區塊中,按需重新組裝 | 非階層式資料湖中的非結構化資料 |
中繼資料 | 限量 | 無限和可自訂 |
資料擷取方法 | 資料查詢表 | 可自訂 |
效能 | 快速,特別是對於小型檔案 | 視情況而定,但適用於大型檔案 |
成本 | 取決於廠商,通常更昂貴 | 取決於廠商,通常更便宜(除了輸出費用) |
如上表所示,區塊和物件儲存體在許多領域有不同之處。但是,組織應仔細評估每個模型在四個主要領域的功能:成本、效能、容量和中繼資料。
物件儲存體的最大優勢之一就是成本。透過物件儲存體儲存資料通常比在區塊儲存體中儲存資料便宜。區塊儲存體需要大量的處理能力,才能經常重新組合和讀取資料,而這種效能最佳化往往會使成本更高。
相反地,效能是區塊儲存體的優勢,特別是對於較小的檔案而言。物件儲存體中的物件並不意味著定期存取和載入,但區塊儲存體的情況就是如此。
物件儲存體的另一個優點是其無限或幾乎無限的容量。物件儲存體資料湖可以盡可能大,而客戶只需為其使用量付費。區塊儲存體的容量受到限制,而且擴展成本高昂。
最後,中繼資料是一個重要的差異點。在許多情況下,開發人員或組織可能會想要將重要資訊附加到他們要儲存的檔案中,以協助尋找、解譯和對其中的資料進行語境化。區塊儲存體僅允許非常基本的中繼資料,而物件儲存體中繼資料則具有高度彈性。
根據組織的需求,區塊和物件儲存體的每個層面都可能是一個優點或缺點。
回到我們的停車範例:大型貨車、半卡車和休閒車輛可能不太適合在區塊儲存體車庫內停放。但是,憑藉寬敞的開放式空間,物件儲存體停車場是停放此類車輛的好地方。
因此,開發人員或組織選擇哪種類型的儲存體取決於他們希望「停放」的車輛大小,以及他們需要多久把車從停車場開走一次。
對於大量的非結構化資料,特別是如果不需要定期讀取該資料,物件儲存體可能會發揮最佳效果。物件儲存體的常見使用案例包括:
對於需要快速且頻繁載入的較小資料量和較小的檔案,區塊儲存體可能效果最佳。區塊儲存體用法包括:
但是,上方列出的使用案例並不意味著是確定的。有許多方法可同時使用物件儲存體和區塊儲存體。值得注意的是,儲存大量非結構化資料(更適合使用物件儲存體)的需求預計會有所增長。
Cloudflare R2 是物件儲存體,因此它具備針對物件儲存體描述的所有優點,但還有一個關鍵的額外優點:無輸出費用。想像一下 R2 是一個大型停車場,離開停車場時不收取費用。與此同時,其他停車場讓離開停車場的司機感到驚訝,因為他們需要支付過高的費用才能把車開出停車場。
Cloudflare R2 旨在讓開發人員能夠使用與 S3 相容的物件儲存體來建立所需的多雲端架構。R2 還與 Cloudflare Workers(用於編寫隨需執行的函數和微服務的平台)整合,以提供動態功能。進一步瞭解 R2。