了解云端對(duì)象存儲(chǔ)和塊存儲(chǔ)
在過去的十年中,云存儲(chǔ)服務(wù)出現(xiàn)爆炸式增長,這在很大程度上是因?yàn)榈统杀净趯?duì)象的存儲(chǔ)庫的激增,這種存儲(chǔ)庫被證明是當(dāng)今很多超大規(guī)模工作負(fù)載的理想選擇。另一方面,塊存儲(chǔ)主要保留在本地,支持關(guān)鍵任務(wù)和數(shù)據(jù)密集型工作負(fù)載。然而,這似乎正在發(fā)生改變。Taneja Group最新兩項(xiàng)研究表明,企業(yè)正越來越多地轉(zhuǎn)向云進(jìn)行塊存儲(chǔ),以尋求更高效更靈活的方式來支持其工作負(fù)載。
對(duì)于很多決策者而言,他們并不總是很明確,云對(duì)象存儲(chǔ)與塊存儲(chǔ)之間的區(qū)別,以及何時(shí)使用一種或另一種。而只有了解了這兩種方法,他們才能制定有效的策略以正確部署云存儲(chǔ)。
塊存儲(chǔ)基礎(chǔ)知識(shí)
塊存儲(chǔ)是最古老和最常用的存儲(chǔ)類型之一,并且,它仍然可支持當(dāng)今的很多應(yīng)用程序。盡管塊存儲(chǔ)通常會(huì)關(guān)聯(lián)本地SAN,但塊存儲(chǔ)現(xiàn)在已成為云環(huán)境的重要組成部分,而且越來越多的供應(yīng)商開始提供基于塊的服務(wù)。
在塊存儲(chǔ)模型中,原始存儲(chǔ)卷分割成固定長度的塊,而數(shù)據(jù)保存在存儲(chǔ)塊的存儲(chǔ)介質(zhì)中。每個(gè)塊都關(guān)聯(lián)到一個(gè)地址,該地址具有唯一標(biāo)識(shí)符。該地址是分配給該塊的唯一元數(shù)據(jù),有些行業(yè)專家甚至不認(rèn)為這些地址為元數(shù)據(jù)。
由于缺少元數(shù)據(jù),因此存儲(chǔ)塊精益且高效,沒有太多開銷。為了管理塊存儲(chǔ),獨(dú)立于存儲(chǔ)介質(zhì)的軟件程序控制著存儲(chǔ)塊在存儲(chǔ)驅(qū)動(dòng)器的放置和整理。該軟件還處理數(shù)據(jù)檢索,使用地址來定位塊,然后將數(shù)據(jù)整理成完整的文件。
長期以來,塊存儲(chǔ)一直是企業(yè)存儲(chǔ)的首選解決方案,因?yàn)樗哂锌焖佟⒏咝Ш挽`活的特點(diǎn),并具有低延遲的I / O和高可靠性。塊存儲(chǔ)設(shè)備可以很容易地拆卸和移動(dòng),并且,其背后的技術(shù)是眾所周知的,已得到廣泛部署,這使企業(yè)更容易將塊存儲(chǔ)集成到各種應(yīng)用程序工作流中。
在考慮對(duì)象存儲(chǔ)與塊存儲(chǔ)選擇時(shí),重要的是要考慮塊存儲(chǔ)所帶來的挑戰(zhàn)。這些包括有限的可擴(kuò)展性和增加的延遲性,在控制不靠近存儲(chǔ)設(shè)備的應(yīng)用程序時(shí)可能會(huì)出現(xiàn)這些問題。缺少元數(shù)據(jù)可能是另一個(gè)缺點(diǎn),因?yàn)檫@使得控制應(yīng)用程序需要將附額外信息附加到每個(gè)塊。塊存儲(chǔ)也可能變得昂貴,并且維護(hù)和優(yōu)化可能很復(fù)雜。
盡管存在這些挑戰(zhàn),但塊存儲(chǔ)仍然非常適合幾種企業(yè)用例。對(duì)于需要一致的I / O性能和低延遲的高性能、關(guān)鍵任務(wù)應(yīng)用程序,它是理想選擇,例如關(guān)系數(shù)據(jù)庫系統(tǒng)、虛擬桌面基礎(chǔ)結(jié)構(gòu)和電子郵件服務(wù)器。它也非常適合RAID陣列,并且可以支持從網(wǎng)絡(luò)存儲(chǔ)啟動(dòng)系統(tǒng)。
由于塊存儲(chǔ)在眾多企業(yè)應(yīng)用程序中扮演著至關(guān)重要的角色,我們開始看到云供應(yīng)商現(xiàn)在提供塊存儲(chǔ)服務(wù),例如AWS Elastic Block Storage、Google Cloud Persistent Disks和Rackspace Cloud Block Storage。
對(duì)象存儲(chǔ)基礎(chǔ)知識(shí)
與塊存儲(chǔ)相比,對(duì)象存儲(chǔ)相對(duì)較新。對(duì)象存儲(chǔ)主要用于存儲(chǔ)日益增長的非結(jié)構(gòu)化數(shù)據(jù),例如網(wǎng)頁、照片、視頻、日志文件和IoT數(shù)據(jù)。
通過對(duì)象存儲(chǔ),數(shù)據(jù)及其元數(shù)據(jù)被打包到離散的單元或?qū)ο笾校@些單元或?qū)ο蟠鎯?chǔ)在結(jié)構(gòu)平坦的數(shù)據(jù)環(huán)境中,而這個(gè)環(huán)境跨越多個(gè)網(wǎng)絡(luò)系統(tǒng)和地理邊界。為了訪問數(shù)據(jù),應(yīng)用程序僅需使用常見的基于HTTP的RESTful API調(diào)用,例如PUT、GET或POST,從而簡化了訪問和管理數(shù)據(jù)的流程。
每個(gè)對(duì)象關(guān)聯(lián)的元數(shù)據(jù)都包括唯一標(biāo)識(shí)符,并且它可以包含可定制的信息,該信息為基礎(chǔ)數(shù)據(jù)提供了更多背景信息。例如,元數(shù)據(jù)可能包括有關(guān)相應(yīng)應(yīng)用程序的詳細(xì)信息,分配給對(duì)象的數(shù)據(jù)保護(hù)級(jí)別或其他支持保留、路由和刪除數(shù)據(jù)的策略的信息。有效的元數(shù)據(jù)也可以幫助執(zhí)行高級(jí)分析。
對(duì)象模型的平面結(jié)構(gòu)和可自定義的元數(shù)據(jù)使擴(kuò)展數(shù)據(jù)存儲(chǔ)庫變得更加簡單。當(dāng)需要更多存儲(chǔ)時(shí),即使跨地理邊界,也只需部署額外節(jié)點(diǎn)即可。此外,可自定義的元數(shù)據(jù)使跨位置整理、搜索和檢索數(shù)據(jù)變得更加容易。對(duì)象存儲(chǔ)服務(wù)通常比其他存儲(chǔ)服務(wù)便宜,因?yàn)樵摯鎯?chǔ)可以在商品硬件運(yùn)行,更易于管理,并且在很多情況下不會(huì)經(jīng)常被訪問。
但是對(duì)象存儲(chǔ)有其自身的挑戰(zhàn),最明顯的是性能問題。元數(shù)據(jù)可能會(huì)增加開銷,并且修改數(shù)據(jù)可能很麻煩。甚至讀取操作也可能很慢,這是由于固有的延遲。此外,當(dāng)企業(yè)轉(zhuǎn)移到對(duì)象存儲(chǔ)時(shí),可能需要更新其應(yīng)用程序以適應(yīng)HTTP調(diào)用。
然而,即使面臨這些挑戰(zhàn),在很多用例中,對(duì)象存儲(chǔ)仍然具有優(yōu)勢(shì)。例如,它非常適合存儲(chǔ)不經(jīng)常更新的大量非結(jié)構(gòu)化數(shù)據(jù)。對(duì)象存儲(chǔ)也非常適合備份或歸檔數(shù)據(jù),以及大規(guī)模分析–可以利用豐富元數(shù)據(jù)。另外,很多企業(yè)將對(duì)象存儲(chǔ)用于Web應(yīng)用程序和服務(wù),這非常適合于使用HTTP調(diào)用來訪問存儲(chǔ)對(duì)象。
現(xiàn)在,很多云提供商都提供對(duì)象存儲(chǔ)服務(wù),有些提供商同時(shí)還提供塊存儲(chǔ)服務(wù)。亞馬遜、Rackspace和谷歌都提供對(duì)象存儲(chǔ)和塊存儲(chǔ)云服務(wù)。
選擇對(duì)象存儲(chǔ)還是塊存儲(chǔ)
塊存儲(chǔ)和對(duì)象存儲(chǔ)都有其優(yōu)點(diǎn)和缺點(diǎn),大多數(shù)用例要么適合塊存儲(chǔ),要么適合對(duì)象存儲(chǔ)。你可能不會(huì)使用對(duì)象存儲(chǔ)來支持你的關(guān)系數(shù)據(jù)庫,但可能會(huì)將其用于全局Web應(yīng)用程序或大數(shù)據(jù)分析項(xiàng)目。幸運(yùn)的是,現(xiàn)在云提供商提供多種存儲(chǔ)數(shù)據(jù)選項(xiàng),因此企業(yè)更容易在對(duì)象存儲(chǔ)與塊存儲(chǔ)間做出選擇。這些選項(xiàng)使將企業(yè)工作負(fù)載移至云變得更容易,而又不會(huì)影響關(guān)鍵任務(wù)應(yīng)用程序的性能。