文件存儲(chǔ)
設(shè)備:FTP、NFS服務(wù)器
特點(diǎn):一個(gè)大文件夾但两,大家都可以獲取文件
優(yōu)點(diǎn):可以共享
缺點(diǎn):傳輸速率低
塊存儲(chǔ)
設(shè)備:cinder鬓梅,硬盤
特點(diǎn):分區(qū)、格式化后谨湘,可以使用绽快,與平常主機(jī)內(nèi)置硬盤的方式完全無(wú)異
優(yōu)點(diǎn):直接掛載使用
缺點(diǎn):不能共享數(shù)據(jù)
對(duì)象存儲(chǔ)
設(shè)備:swift,鍵值存儲(chǔ)
特點(diǎn):具備塊存儲(chǔ)的高速以及文件存儲(chǔ)的共享等特性
優(yōu)點(diǎn):速率快紧阔,共享方便
缺點(diǎn):不兼容現(xiàn)有模式
【塊存儲(chǔ)】
典型設(shè)備:磁盤陣列坊罢,硬盤
塊存儲(chǔ)主要是將裸磁盤空間整個(gè)映射給主機(jī)使用的,就是說(shuō)例如磁盤陣列里面有5塊硬盤(為方便說(shuō)明擅耽,假設(shè)每個(gè)硬盤1G)活孩,然后可以通過(guò)劃邏輯盤、做Raid乖仇、或者LVM(邏輯卷)等種種方式邏輯劃分出N個(gè)邏輯的硬盤憾儒。(假設(shè)劃分完的邏輯盤也是5個(gè),每個(gè)也是1G乃沙,但是這5個(gè)1G的邏輯盤已經(jīng)于原來(lái)的5個(gè)物理硬盤意義完全不同了起趾。例如第一個(gè)邏輯硬盤A里面,可能第一個(gè)200M是來(lái)自物理硬盤1警儒,第二個(gè)200M是來(lái)自物理硬盤2训裆,所以邏輯硬盤A是由多個(gè)物理硬盤邏輯虛構(gòu)出來(lái)的硬盤。)
接著塊存儲(chǔ)會(huì)采用映射的方式將這幾個(gè)邏輯盤映射給主機(jī)蜀铲,主機(jī)上面的操作系統(tǒng)會(huì)識(shí)別到有5塊硬盤边琉,但是操作系統(tǒng)是區(qū)分不出到底是邏輯還是物理的,它一概就認(rèn)為只是5塊裸的物理硬盤而已记劝,跟直接拿一塊物理硬盤掛載到操作系統(tǒng)沒(méi)有區(qū)別的艺骂,至少操作系統(tǒng)感知上沒(méi)有區(qū)別。
此種方式下隆夯,操作系統(tǒng)還需要對(duì)掛載的裸硬盤進(jìn)行分區(qū)钳恕、格式化后别伏,才能使用,與平常主機(jī)內(nèi)置硬盤的方式完全無(wú)異忧额。
優(yōu)點(diǎn):
1厘肮、 這種方式的好處當(dāng)然是因?yàn)橥ㄟ^(guò)了Raid與LVM等手段,對(duì)數(shù)據(jù)提供了保護(hù)睦番。
2类茂、 另外也可以將多塊廉價(jià)的硬盤組合起來(lái),成為一個(gè)大容量的邏輯盤對(duì)外提供服務(wù)托嚣,提高了容量巩检。
3、 寫入數(shù)據(jù)的時(shí)候示启,由于是多塊磁盤組合出來(lái)的邏輯盤兢哭,所以幾塊磁盤可以并行寫入的,提升了讀寫效率夫嗓。
4迟螺、 很多時(shí)候塊存儲(chǔ)采用SAN架構(gòu)組網(wǎng),傳輸速率以及封裝協(xié)議的原因舍咖,使得傳輸速度與讀寫速率得到提升矩父。
缺點(diǎn):
1、采用SAN架構(gòu)組網(wǎng)時(shí)排霉,需要額外為主機(jī)購(gòu)買光纖通道卡窍株,還要買光纖交換機(jī),造價(jià)成本高攻柠。
2夹姥、主機(jī)之間的數(shù)據(jù)無(wú)法共享,在服務(wù)器不做集群的情況下辙诞,塊存儲(chǔ)裸盤映射給主機(jī)辙售,再格式化使用后,對(duì)于主機(jī)來(lái)說(shuō)相當(dāng)于本地盤飞涂,那么主機(jī)A的本地盤根本不能給主機(jī)B去使用旦部,無(wú)法共享數(shù)據(jù)。
3较店、不利于不同操作系統(tǒng)主機(jī)間的數(shù)據(jù)共享:另外一個(gè)原因是因?yàn)椴僮飨到y(tǒng)使用不同的文件系統(tǒng)士八,格式化完之后,不同文件系統(tǒng)間的數(shù)據(jù)是共享不了的梁呈。例如一臺(tái)裝了WIN7/XP婚度,文件系統(tǒng)是FAT32/NTFS,而Linux是EXT4官卡,EXT4是無(wú)法識(shí)別NTFS的文件系統(tǒng)的蝗茁。就像一只NTFS格式的U盤醋虏,插進(jìn)Linux的筆記本,根本無(wú)法識(shí)別出來(lái)哮翘。所以不利于文件共享颈嚼。
【文件存儲(chǔ)】
典型設(shè)備:FTP、NFS服務(wù)器
為了克服上述文件無(wú)法共享的問(wèn)題饭寺,所以有了文件存儲(chǔ)阻课。
文件存儲(chǔ)也有軟硬一體化的設(shè)備,但是其實(shí)普通拿一臺(tái)服務(wù)器/筆記本艰匙,只要裝上合適的操作系統(tǒng)與軟件限煞,就可以架設(shè)FTP與NFS服務(wù)了,架上該類服務(wù)之后的服務(wù)器员凝,就是文件存儲(chǔ)的一種了署驻。
主機(jī)A可以直接對(duì)文件存儲(chǔ)進(jìn)行文件的上傳下載,與塊存儲(chǔ)不同绊序,主機(jī)A是不需要再對(duì)文件存儲(chǔ)進(jìn)行格式化的硕舆,因?yàn)槲募芾砉δ芤呀?jīng)由文件存儲(chǔ)自己搞定了秽荞。
優(yōu)點(diǎn):
1骤公、造價(jià)交低:隨便一臺(tái)機(jī)器就可以了,另外普通以太網(wǎng)就可以扬跋,根本不需要專用的SAN網(wǎng)絡(luò)阶捆,所以造價(jià)低。
2钦听、方便文件共享:例如主機(jī)A(WIN7洒试,NTFS文件系統(tǒng)),主機(jī)B(Linux朴上,EXT4文件系統(tǒng))垒棋,想互拷一部電影,本來(lái)不行痪宰。加了個(gè)主機(jī)C(NFS服務(wù)器)叼架,然后可以先A拷到C,再C拷到B就OK了衣撬。(例子比較膚淺乖订,請(qǐng)見(jiàn)諒……)
缺點(diǎn):
讀寫速率低,傳輸速率慢:以太網(wǎng)具练,上傳下載速度較慢乍构,另外所有讀寫都要1臺(tái)服務(wù)器里面的硬盤來(lái)承擔(dān),相比起磁盤陣列動(dòng)不動(dòng)就幾十上百塊硬盤同時(shí)讀寫扛点,速率慢了許多哥遮。
【對(duì)象存儲(chǔ)】
典型設(shè)備:內(nèi)置大容量硬盤的分布式服務(wù)器
對(duì)象存儲(chǔ)最常用的方案岂丘,就是多臺(tái)服務(wù)器內(nèi)置大容量硬盤,再裝上對(duì)象存儲(chǔ)軟件昔善,然后再額外搞幾臺(tái)服務(wù)作為管理節(jié)點(diǎn)元潘,安裝上對(duì)象存儲(chǔ)管理軟件。管理節(jié)點(diǎn)可以管理其他服務(wù)器對(duì)外提供讀寫訪問(wèn)功能君仆。
之所以出現(xiàn)了對(duì)象存儲(chǔ)這種東西翩概,是為了克服塊存儲(chǔ)與文件存儲(chǔ)各自的缺點(diǎn),發(fā)揚(yáng)它倆各自的優(yōu)點(diǎn)返咱。簡(jiǎn)單來(lái)說(shuō)塊存儲(chǔ)讀寫快钥庇,不利于共享,文件存儲(chǔ)讀寫慢咖摹,利于共享评姨。能否弄一個(gè)讀寫快,利 于共享的出來(lái)呢萤晴。于是就有了對(duì)象存儲(chǔ)吐句。
首先,一個(gè)文件包含了了屬性(術(shù)語(yǔ)叫metadata店读,元數(shù)據(jù)嗦枢,例如該文件的大小、修改時(shí)間屯断、存儲(chǔ)路徑等)以及內(nèi)容(以下簡(jiǎn)稱數(shù)據(jù))文虏。
以往像FAT32這種文件系統(tǒng),是直接將一份文件的數(shù)據(jù)與metadata一起存儲(chǔ)的殖演,存儲(chǔ)過(guò)程先將文件按照文件系統(tǒng)的最小塊大小來(lái)打散(如4M的文件氧秘,假設(shè)文件系統(tǒng)要求一個(gè)塊4K,那么就將文件打散成為1000個(gè)小塊)趴久,再寫進(jìn)硬盤里面丸相,過(guò)程中沒(méi)有區(qū)分?jǐn)?shù)據(jù)/metadata的。而每個(gè)塊最后會(huì)告知你下一個(gè)要讀取的塊的地址彼棍,然后一直這樣順序地按圖索驥灭忠,最后完成整份文件的所有塊的讀取。
這種情況下讀寫速率很慢滥酥,因?yàn)榫退隳阌?00個(gè)機(jī)械手臂在讀寫更舞,但是由于你只有讀取到第一個(gè)塊,才能知道下一個(gè)塊在哪里坎吻,其實(shí)相當(dāng)于只能有1個(gè)機(jī)械手臂在實(shí)際工作缆蝉。
而對(duì)象存儲(chǔ)則將元數(shù)據(jù)獨(dú)立了出來(lái),控制節(jié)點(diǎn)叫元數(shù)據(jù)服務(wù)器(服務(wù)器+對(duì)象存儲(chǔ)管理軟件),里面主要負(fù)責(zé)存儲(chǔ)對(duì)象的屬性(主要是對(duì)象的數(shù)據(jù)被打散存放到了那幾臺(tái)分布式服務(wù)器中的信息)刊头,而其他負(fù)責(zé)存儲(chǔ)數(shù)據(jù)的分布式服務(wù)器叫做OSD黍瞧,主要負(fù)責(zé)存儲(chǔ)文件的數(shù)據(jù)部分。當(dāng)用戶訪問(wèn)對(duì)象原杂,會(huì)先訪問(wèn)元數(shù)據(jù)服務(wù)器印颤,元數(shù)據(jù)服務(wù)器只負(fù)責(zé)反饋對(duì)象存儲(chǔ)在哪些OSD,假設(shè)反饋文件A存儲(chǔ)在B穿肄、C年局、D三臺(tái)OSD,那么用戶就會(huì)再次直接訪問(wèn)3臺(tái)OSD服務(wù)器去讀取數(shù)據(jù)咸产。
這時(shí)候由于是3臺(tái)OSD同時(shí)對(duì)外傳輸數(shù)據(jù)矢否,所以傳輸?shù)乃俣染图涌炝恕.?dāng)OSD服務(wù)器數(shù)量越多脑溢,這種讀寫速度的提升就越大僵朗,通過(guò)此種方式,實(shí)現(xiàn)了讀寫快的目的屑彻。
另一方面验庙,對(duì)象存儲(chǔ)軟件是有專門的文件系統(tǒng)的,所以O(shè)SD對(duì)外又相當(dāng)于文件服務(wù)器社牲,那么就不存在文件共享方面的困難了粪薛,也解決了文件共享方面的問(wèn)題。
所以對(duì)象存儲(chǔ)的出現(xiàn)膳沽,很好地結(jié)合了塊存儲(chǔ)與文件存儲(chǔ)的優(yōu)點(diǎn)汗菜。
最后為什么對(duì)象存儲(chǔ)兼具塊存儲(chǔ)與文件存儲(chǔ)的好處让禀,還要使用塊存儲(chǔ)或文件存儲(chǔ)呢挑社?
1、有一類應(yīng)用是需要存儲(chǔ)直接裸盤映射的巡揍,例如數(shù)據(jù)庫(kù)痛阻。因?yàn)閿?shù)據(jù)庫(kù)需要存儲(chǔ)裸盤映射給自己后,再根據(jù)自己的數(shù)據(jù)庫(kù)文件系統(tǒng)來(lái)對(duì)裸盤進(jìn)行格式化的腮敌,所以是不能夠采用其他已經(jīng)被格式化為某種文件系統(tǒng)的存儲(chǔ)的阱当。此類應(yīng)用更適合使用塊存儲(chǔ)。
2糜工、對(duì)象存儲(chǔ)的成本比起普通的文件存儲(chǔ)還是較高弊添,需要購(gòu)買專門的對(duì)象存儲(chǔ)軟件以及大容量硬盤。如果對(duì)數(shù)據(jù)量要求不是海量捌木,只是為了做文件共享的時(shí)候油坝,直接用文件存儲(chǔ)的形式好了,性價(jià)比高。