對象存儲:塊和文件之外的存儲形式
塊是存儲的基礎(chǔ)架構(gòu),對塊的管理是簡單的。從全球第一個(gè)磁盤存儲技術(shù)50年前誕生到現(xiàn)在,塊的技術(shù)沒有發(fā)生太大變化。磁盤工業(yè)生產(chǎn)遍及全球。最近幾年,存儲行業(yè)興起存儲虛擬化和數(shù)據(jù)整合的新概念,在這些概念和方案中,數(shù)據(jù)還是以塊的形式通過網(wǎng)絡(luò)進(jìn)行讀寫操作。
塊形式的存儲在滿足數(shù)據(jù)可擴(kuò)展性和數(shù)據(jù)安全性的增長方面,日益顯現(xiàn)出其局限性和不足。國際上主要有兩類網(wǎng)絡(luò)化存儲架構(gòu),它們是通過命令集來區(qū)分的。
第一類是SAN(Storage Area Network)結(jié)構(gòu),它采用SCSI 塊I/O的命令集,通過在磁盤或FC(Fiber Channel)級的數(shù)據(jù)訪問提供高性能的隨機(jī)I/O和數(shù)據(jù)吞吐率,它具有高帶寬、低延遲的優(yōu)勢,在高性能計(jì)算中占有一席之地,但是由于SAN系統(tǒng)的價(jià)格較高,且可擴(kuò)展性較差,已不能滿足成千上萬個(gè)CPU規(guī)模的系統(tǒng)。第二類是NAS(Network Attached Storage)結(jié)構(gòu),它采用NFS或CIFS命令集訪問數(shù)據(jù),以文件為傳輸協(xié)議,通過TCP/IP實(shí)現(xiàn)網(wǎng)絡(luò)化存儲,可擴(kuò)展性好、價(jià)格便宜、用戶易管理,如目前在集群計(jì)算中應(yīng)用較多的NFS文件系統(tǒng),但由于NAS的協(xié)議開銷高、帶寬低、延遲大,不利于在高性能集群中應(yīng)用。
針對Linux集群對存儲系統(tǒng)高性能和數(shù)據(jù)共享的需求,國際上已開始研究全新的存儲架構(gòu)和新型文件系統(tǒng),希望能有效結(jié)合SAN和NAS系統(tǒng)的優(yōu)點(diǎn),支持直接訪問磁盤以提高性能,通過共享的文件和元數(shù)據(jù)以簡化管理,目前對象存儲系統(tǒng)已成為Linux集群系統(tǒng)高性能存儲系統(tǒng)的研究熱點(diǎn),如Panasas公司的Object Base Storage Cluster System系統(tǒng)和Cluster File Systems公司的Lustre等。
基于對象的存儲
在2004年, ANSI 推出了基于對象的存儲設(shè)備(OSD)的1.0版本規(guī)范。它定義了基于對象的存儲設(shè)備的通訊協(xié)議。OSD規(guī)范描述了一個(gè) SCSI 命令集合,由他提供一個(gè)高水平的OSD接口。這個(gè)接口允許客戶端, 比如文件系統(tǒng)和數(shù)據(jù)庫存放和索引數(shù)據(jù)。 SNIA’S 技術(shù)工作組當(dāng)前正在開發(fā)OSD 規(guī)范的2.0版本,這個(gè)版本年內(nèi)完成。
一個(gè)OSD設(shè)備存放對象,他控制著從對象到物理介質(zhì)的映射圖。設(shè)備同時(shí)也跟蹤作為屬性的元數(shù)據(jù),例如建立時(shí)間標(biāo)記,從而允許在客戶端非常容易地共享數(shù)據(jù)。
可以說,OSD最大的賣點(diǎn)在于它結(jié)合了SAN的可擴(kuò)展性和NAS的數(shù)據(jù)共享。早期的NAS架構(gòu)的擴(kuò)展性能并不好,因?yàn)樗械脑獢?shù)據(jù)的處理都集中在NAS服務(wù)器上。在有限的NAS頭下擴(kuò)張更多的存儲受到限制,而且這個(gè)時(shí)候,NAS上的元數(shù)據(jù)處理變成了瓶頸。如果想擴(kuò)展,就需要增加更多的NAS服務(wù)器,但是此時(shí)的管理成為頭疼的事情,因?yàn)閿?shù)據(jù)是分散的, 這就是我們常說到的“NAS 孤島”
OSD的能力在于它將客戶端和OSD設(shè)備直接聯(lián)系起來,并不需要中間環(huán)節(jié)管理元數(shù)據(jù)。Panasas 公司,全球第一家提供商用OSD產(chǎn)品的公司,同時(shí)提供面向?qū)ο蟮拇鎯筒⑿形募到y(tǒng)。Panasas 公司的 DirectFLOW 的設(shè)計(jì),客戶端從帶外管理的控制刀片得到目標(biāo)的分布和安全屬性。所有的數(shù)據(jù)流都直接從OSD存儲刀片到客戶端。盡管商用的OSD產(chǎn)品還只是鳳毛麟角,但是 OSD技術(shù)還是在日新月異。 西捷和IBM已經(jīng)展示了OSDc產(chǎn)品?!P已經(jīng)和開放源代碼廠家 Lustre 文件系統(tǒng)合作,使用OSD作為他的StorageWork 可擴(kuò)展文件系統(tǒng)的重要部分。
對于對象存儲來講,不光是解決了數(shù)據(jù)存儲的問題,同時(shí)它還解決了數(shù)據(jù)安全性的問題。存儲通常已經(jīng)依賴于客戶端和私有網(wǎng)絡(luò)的認(rèn)證來保護(hù)系統(tǒng)的安全性,不管在文件服務(wù)器內(nèi)用的是FC SAN或SCSI陣列。對象存儲體系結(jié)構(gòu)在每一個(gè)級別上都提供了安全性:存儲系統(tǒng)對存儲設(shè)備的認(rèn)證;存儲系統(tǒng)對計(jì)算節(jié)點(diǎn)的認(rèn)證;存儲系統(tǒng)對計(jì)算節(jié)點(diǎn)命令的認(rèn)證;所有命令都經(jīng)CRC的完整性檢查;數(shù)據(jù)和命令經(jīng)由IP的私有性。這樣的安全水平能給用戶以信心,他們可以用更經(jīng)濟(jì)高效,可管理并容易訪問的網(wǎng)絡(luò),如以太網(wǎng),作為存儲的傳輸工具,同時(shí)還提高了整個(gè)存儲體系的安全性。
“對象存儲設(shè)備并不適合所有的用戶。” Panasas公司的CTO Garth Gibson博士說。經(jīng)過幾年的努力,Panasas 在政府,科研,能源,媒體和金融服務(wù)有了很多非常成功的案例。“Panasas 是使用面向?qū)ο蟮拇鎯?,來解決計(jì)算集群的并行存儲的問題”。高性能計(jì)算和存儲專家胡家鎏教授說。