對(duì)象存儲(chǔ)的前世今生
那些沒(méi)有為數(shù)據(jù)庫(kù)或文件系統(tǒng)寫(xiě)過(guò)代碼的上了年紀(jì)的程序員應(yīng)該不太可能讀到這篇文章。畢竟,一般商業(yè)應(yīng)用程序訪問(wèn)其他數(shù)據(jù)類型的模式已經(jīng)存在超過(guò)40年了。因此,代表著***個(gè)主要的新型數(shù)據(jù)結(jié)構(gòu)類型的對(duì)象存儲(chǔ),它在兩代的時(shí)間里對(duì)數(shù)據(jù)管理實(shí)踐產(chǎn)生了顯著影響。對(duì)象的實(shí)現(xiàn)始于上世紀(jì)90年代末,但多數(shù)是特殊應(yīng)用。大規(guī)模的部署則由云服務(wù)所***,如亞馬遜S3,F(xiàn)acebook和 Spotify?,F(xiàn)在,無(wú)論成熟廠商還是新興廠商的對(duì)象存儲(chǔ)解決方案都已達(dá)到相當(dāng)成熟度,使得IT部門(mén)開(kāi)始考慮如何在自己企業(yè)中實(shí)現(xiàn)對(duì)象存儲(chǔ)。
對(duì)象存儲(chǔ)在很多重要方面與SAN和NAS迥然不同,對(duì)存儲(chǔ)管理員而言最顯著的區(qū)別在于對(duì)象存儲(chǔ)沒(méi)有LUNs,卷以及RAID等要素。對(duì)象數(shù)據(jù)不是存儲(chǔ)在固定的塊,而是在大小可變的“容器”里。鑒于元數(shù)據(jù)(metadata)和數(shù)據(jù)本身可通過(guò)傳統(tǒng)數(shù)據(jù)訪問(wèn)方法進(jìn)行訪問(wèn),對(duì)象存儲(chǔ)允許數(shù)據(jù)被直接訪問(wèn)。此外,支持對(duì)象級(jí)和命令級(jí)的安全策略設(shè)置。
然而,企業(yè)IT部門(mén)卻不太認(rèn)為他們需要對(duì)象存儲(chǔ)。相反,存儲(chǔ)經(jīng)理們?cè)趯ふ腋玫姆椒▉?lái)滿足企業(yè)的數(shù)據(jù)訪問(wèn)需求,他們需要盡可能簡(jiǎn)單而不貴的解決方案,盡管對(duì)象存儲(chǔ)事實(shí)上挺符合這些需求的。
在數(shù)據(jù)中心使用對(duì)象存儲(chǔ)是一種“和”而不是“或”的解決方案。對(duì)象存儲(chǔ)擁有很大前景,但它不會(huì)很快就完全取代SAN和NAS存儲(chǔ)。存儲(chǔ)系統(tǒng)實(shí)施中的共性有:
- 歸檔
- 云存儲(chǔ)
- 備份與恢復(fù)
- 合規(guī)性
- 內(nèi)容服務(wù)
還有一些應(yīng)用案例中數(shù)據(jù)訪問(wèn)是必要的,但性能卻不一定是問(wèn)題。
對(duì)象存儲(chǔ)的實(shí)現(xiàn)模型
當(dāng)前的對(duì)象存儲(chǔ)解決方案從即用型的云服務(wù),軟硬件捆綁或純軟件的應(yīng)用交付,直到完全的融合型陣列。有些實(shí)現(xiàn)試圖擁抱并包容傳統(tǒng)存儲(chǔ)架構(gòu),而另一些則是純粹的專門(mén)設(shè)計(jì)。
從 Helion公有云開(kāi)始,惠普提供了全系列的對(duì)象存儲(chǔ)產(chǎn)品。對(duì)于內(nèi)部和私有云環(huán)境,惠普的StoreAll 820存儲(chǔ)網(wǎng)關(guān)應(yīng)用可作為前端搭載StoreServe 7000型或10000型陣列,也就是3PAR陣列。StoreAll 8800則是基于3PAR的一個(gè)完全的融合性陣列,在同一設(shè)備里支持SAN,NAS和對(duì)象存儲(chǔ)。因此,惠普的產(chǎn)品針對(duì)了每種類型和大小的客戶,從小型到中小型(SMBs)再到***的企業(yè)集團(tuán)。
新興對(duì)象存儲(chǔ)廠商Exablox的***個(gè)產(chǎn)品是OneBlox應(yīng)用,其架構(gòu)是一群對(duì)等節(jié)點(diǎn)組成的“環(huán)”,待存儲(chǔ)對(duì)象通過(guò)支持SMB/CIFS的通用文件系統(tǒng)在這些節(jié)點(diǎn)上被存儲(chǔ)。有一點(diǎn)值得注意,OneBlox應(yīng)用可以支持任何SAS或SATA硬盤(pán)驅(qū)動(dòng)器,即使是剛剛發(fā)行的***款—如西數(shù)的HGST Ultrastar He66TB充氦型硬盤(pán)。IT企業(yè)可以從它們喜愛(ài)的電子設(shè)備商采購(gòu)硬盤(pán),因而避免了常見(jiàn)的陣列加價(jià)。Exablox針對(duì)中小型企業(yè)和云服務(wù)提供商,目前已有2000用戶。
昆騰Lattus對(duì)象存儲(chǔ)應(yīng)用的配置可以從6節(jié)點(diǎn)擴(kuò)展到20節(jié)點(diǎn),這些節(jié)點(diǎn)在地理上分散以使得廣域接入和協(xié)作成為可能。 Lattus有三種模式:D,X和M模式。D模式支持原生的S3接口(HTTP Rest);X模式支持NFS,CIFS和HTTPREST協(xié)議;M模式則支持昆騰的StorNext存儲(chǔ)管理接口。Lattus是業(yè)務(wù)無(wú)中斷,自修復(fù)和自遷移的系統(tǒng),主要面向大中型企業(yè),尤其是媒體和娛樂(lè)行業(yè),或者那些需要進(jìn)行計(jì)算/處理/編輯的應(yīng)用場(chǎng)景。
EMC提供多種對(duì)象存儲(chǔ)產(chǎn)品。 Atmos可以以云服務(wù)的形式交付,稱為Atmos Geo Drive,但也可以作為完全的陣列形式交付。EMC的SourceOne歸檔應(yīng)用則通過(guò)采用CIFS和NFS協(xié)議將文件接口轉(zhuǎn)換為Atmos對(duì)象存儲(chǔ),從而提供歸檔,合規(guī)和電子發(fā)現(xiàn)功能。此外,EMC的ViPR軟件定義存儲(chǔ)平臺(tái)提供對(duì)象服務(wù),作為EMC Isilon,VNX,或NetApp陣列的前端,可允許對(duì)象訪問(wèn)到達(dá)后端數(shù)據(jù)層。
簡(jiǎn)單是關(guān)鍵
對(duì)象存儲(chǔ)與傳統(tǒng)存儲(chǔ)的差異反映出它的一個(gè)關(guān)鍵優(yōu)勢(shì):簡(jiǎn)單性。當(dāng)今大多數(shù)IT企業(yè)并不哀嘆缺乏技術(shù),而是一再增加系統(tǒng)的復(fù)雜性。與此相反,對(duì)象存儲(chǔ)系統(tǒng)的特點(diǎn)正是實(shí)施和管理上的簡(jiǎn)單性。比如Exablox聲稱OneBlox應(yīng)用的安裝和配置是如此簡(jiǎn)單以至于有那么個(gè)不太較真的“卡布奇諾挑戰(zhàn)賽”,即Exablox演示如何將他們的設(shè)備開(kāi)箱,上電,安裝硬盤(pán)到存儲(chǔ)數(shù)據(jù),整個(gè)過(guò)程所花時(shí)間和品嘗一杯卡布奇諾咖啡的時(shí)間相當(dāng)。
由于對(duì)象存儲(chǔ)不依賴于LUNs和卷,因此可實(shí)現(xiàn)無(wú)中斷擴(kuò)展。通常,新的存儲(chǔ)容量可以通過(guò)簡(jiǎn)單配置加入到運(yùn)行系統(tǒng)中。Exablox和昆騰都聲稱用戶將永遠(yuǎn)不會(huì)再經(jīng)歷大規(guī)模升級(jí),系統(tǒng)配置或重新配置。這種擴(kuò)展性是由設(shè)備底層的文件系統(tǒng)所實(shí)現(xiàn)的,比如惠普的StoreAll系統(tǒng)使用StoreAll分布式文件系統(tǒng),而Exablox則使用它們的環(huán)形架構(gòu)和通用文件系統(tǒng)。它們與其他的對(duì)象存儲(chǔ)系統(tǒng)一樣,很像橫向擴(kuò)展(scale-out)存儲(chǔ)系統(tǒng),由文件系統(tǒng)來(lái)實(shí)現(xiàn)了跨節(jié)點(diǎn)的全局命名空間。然而需要留心的是,由于擴(kuò)展性并非***的,在某一特定配置下,廠商對(duì)所支持節(jié)點(diǎn)的個(gè)數(shù)確實(shí)有限制。
對(duì)象友好的應(yīng)用
這里提到離散用例的一個(gè)主要原因是對(duì)象存儲(chǔ)是使用REST API進(jìn)行訪問(wèn),該API的數(shù)據(jù)訪問(wèn)命令僅限最基本的POST,GET,PUT和DELETE操作,然而很多云供應(yīng)商卻親睞REST作為***接口。為了提供更豐富的功能,惠普StoreAll產(chǎn)品是一個(gè)融合的文件和對(duì)象系統(tǒng),它的操作系統(tǒng)支持CIFS, NFS, OpenStack, Identity Services, Swift和Keystone等協(xié)議。EMC的云網(wǎng)關(guān)應(yīng)用SourceOne和Cloud Tiering,將CIFS和NFS翻譯成Atoms對(duì)象存儲(chǔ),以及除歸檔外的其它一系列第三方應(yīng)用程序。昆騰在它的Lattus對(duì)象存儲(chǔ)產(chǎn)品中捆綁了 RESTful接口,該接口允許昆騰與其他公司如CommVault(Simpana)和Arkivio等展開(kāi)合作。Exablox的OneBlox支持 REST,但是作為一個(gè)CIFS共享呈現(xiàn)給應(yīng)用程序,NFS的支持尚在開(kāi)發(fā)中。
#p#
對(duì)象存儲(chǔ)和數(shù)據(jù)持久性
由于對(duì)象存儲(chǔ)并不依賴RAID做故障保護(hù),廠商們需要?jiǎng)e的策略來(lái)完成。大多數(shù)情況下,這涉及到跨節(jié)點(diǎn)的復(fù)制。昆騰Lattus可以部署持久性策略,即IT經(jīng)理可以指定跨節(jié)點(diǎn)和地點(diǎn)的不同復(fù)制策略,以應(yīng)對(duì)一定數(shù)量的節(jié)點(diǎn)故障。如20/4策略可將數(shù)據(jù)分散復(fù)制到20個(gè)節(jié)點(diǎn),從而避免最多4個(gè)節(jié)點(diǎn)發(fā)生故障而導(dǎo)致數(shù)據(jù)損失;18/7策略則是將數(shù)據(jù)復(fù)制到3個(gè)節(jié)點(diǎn)以應(yīng)對(duì)單點(diǎn)故障的數(shù)據(jù)損失。Exablox的OneBlox也將數(shù)據(jù)復(fù)制到其他節(jié)點(diǎn),其中復(fù)制到3個(gè)節(jié)點(diǎn)的數(shù)據(jù)可以避免兩節(jié)點(diǎn)故障的數(shù)據(jù)損失;而如何將數(shù)據(jù)在節(jié)點(diǎn)間做***化分布則由一個(gè)哈希算法來(lái)保障。
EMC的Atmos擁有兩套保護(hù)模式供IT經(jīng)理來(lái)決定如何優(yōu)化可達(dá)性與效率。數(shù)據(jù)復(fù)制是一種選擇,無(wú)論是同步還是異步。此外,該產(chǎn)品還采用分布式可擦除編碼,它具有較高的存儲(chǔ)利用率,但每次數(shù)據(jù)請(qǐng)求都需要訪問(wèn)兩個(gè)或更多地?cái)?shù)據(jù)存儲(chǔ)。昆騰的Lattus同樣使用fountain可擦除編碼,使數(shù)據(jù)在各節(jié)點(diǎn)間分布,而不再需要復(fù)制。
其它高級(jí)存儲(chǔ)服務(wù)
由于REST API的固有限制,廠商們不得不使用各自的方式來(lái)提供API基本功能以外的存儲(chǔ)服務(wù)。這也正是惠普將StoreAll實(shí)現(xiàn)為一個(gè)融合設(shè)備的原因之一,在需要一整套存儲(chǔ)服務(wù)的應(yīng)用環(huán)境里惠普可以充分利用NAS端已經(jīng)具備的特性。例如,當(dāng)StoreAll 8200和StoreAll 8800使用3PAR作為存儲(chǔ)后端時(shí),系統(tǒng)即內(nèi)置了惠普的自適應(yīng)優(yōu)化,加密,WORM(Write Once Read Many)和分層等功能特性。
由于沒(méi)有遺留系統(tǒng)需要加以考慮,Exablox采取了一條完全不同的道路。它將數(shù)據(jù)管理的原子單位設(shè)置為32KB的哈希塊。如果一個(gè)塊已存在,則創(chuàng)建指向它的指針,而不是一個(gè)新塊。因而該公司聲稱他們的重復(fù)數(shù)據(jù)刪除功能是“免費(fèi)”的。數(shù)據(jù)加密則使用AES 256標(biāo)準(zhǔn)來(lái)實(shí)現(xiàn)。
對(duì)象存儲(chǔ)的性能改進(jìn)
盡管IT用戶確實(shí)不會(huì)在OLTP應(yīng)用中使用對(duì)象存儲(chǔ)系統(tǒng),廠商們依然在努力提高其系統(tǒng)性能。例如,EMC使用一種“boxcarting”的方法來(lái)處理大量小交易,即將這些小交易合并在一個(gè)單次寫(xiě)操作中。Exablox則采用不同技術(shù),他們的哈希算法能將數(shù)據(jù)平均分布到所有節(jié)點(diǎn)從而避免I/O瓶頸。
盡管對(duì)象存儲(chǔ)系統(tǒng)確實(shí)不會(huì)用于OLTP應(yīng)用,廠商們依然在努力提高其系統(tǒng)性能。
相較于SAN和NAS的復(fù)雜性,盡管對(duì)象存儲(chǔ)也并非銀彈,但是它確實(shí)能夠簡(jiǎn)化至少一部分存儲(chǔ)投資,特別是在歸檔和非結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)方面。對(duì)象存儲(chǔ)可以提供更低的每GB價(jià)格,而***的優(yōu)點(diǎn)則是簡(jiǎn)化了存儲(chǔ)管理。按照通常所認(rèn)為的那樣,如果存儲(chǔ)管理的成本占據(jù)了總擁有成本的85%,那么對(duì)象存儲(chǔ)系統(tǒng)由于無(wú)需配置,重新配置和部署任務(wù),必將極大地影響總擁有成本。IT經(jīng)理們將會(huì)想辦法將對(duì)象存儲(chǔ)納入到企業(yè)IT信息架構(gòu)中來(lái)。
原文鏈接:什么是對(duì)象存儲(chǔ)?