RAID前面我們介紹了磁盤的基本原理,,我們知道一塊磁盤的容量和速度是有限的,對于一些應用來說,,可能需要幾個TB的大小的來存放數據,,我們必須要制造更大單盤容量的磁盤嗎?實際上,,可以使用多塊磁盤并行起來解決這個問題,,這就是RAID技術。
七種RAIDRAID 0實現(xiàn)RAID 0 有兩種方式,,一種是非條帶化的模式,一種是條帶化的模式,。 對于非條帶化的模式: RAID 0 : 一塊磁盤寫滿了,,就往另一塊上寫, 一次IO只用到一塊磁盤,,對整個系統(tǒng)來說容量增大了,。 因為寫滿一塊物理盤以后再寫另一塊盤。對寫IO沒有任何優(yōu)化,,但是對讀IO能提高一定的并發(fā)IO讀幾率,。 我們希望可以這樣,同時向兩塊磁盤進行寫,。我們可以把要寫的IO塊進行編號,,1、2,、3……100等,,然后在$t_1$時刻,磁盤A和磁盤B同時寫入1,、3兩塊,,然后$t_2$時刻,,同時寫入2、4塊,,依次類推,。 這樣就可以實現(xiàn)并發(fā)寫IO呢。接下來就是如何來進行塊的劃分的問題了,。 其實磁盤已經經過低級格式化了,,也就是劃分為若干的扇區(qū),但是扇區(qū)只有512B大小,,這么小的粒度太消耗性能,。所以我們要重新劃分磁盤,而且又不能拋棄原有的扇區(qū),。 最直接的想法就是若干個扇區(qū)組成一個Data block,,比如由4個扇區(qū)組成一個塊(block)
下圖是引入了分割思想以后的硬盤,
那么條帶深度和條帶長度指的就是
總結 這就是所謂的條帶化,,它是對磁盤邏輯上的劃分,相當于在磁盤上加了一個中間層而已 這樣對于一個大塊的數據,,可以以條帶為單位進行寫入,,也就是數據被分為了多塊寫入了4塊硬盤。而不是向之前一樣順序的寫入一個硬盤里面 RAID 0要提升性能,,條帶要做得越小越好,。因為若是條帶深度容量大于寫入的數據的長度,這段數據將會落到同一個segment中,,相當于本次IO只能從一塊硬盤中讀取,。 但是條帶太小,并發(fā)IO幾率降低,。因為如果條帶太小,,每次IO一定會占用大部分物理盤,隊列中的IO只能等待IO結束后才使用物理盤,。 總之,參與RAID0 的物理盤會組成一個邏輯上連續(xù),,物理上也連續(xù)的虛擬磁盤,??刂破鲗μ摂M磁盤發(fā)出的指令,被RAID控制器轉換為真實磁盤IO,,再返回主機磁盤控制器,,經過控制器在cache中的組合,再提交給主機控制器,。 RAID 0有非常明顯的缺點,,沒有任何的備份,所以任何一塊硬盤損壞均會造成數據丟失,。 RAID 1RAID 0 最大的缺點是沒有備份盤,。RAID 1 進行了改正。他采用了一塊用于正常使用,,另一塊作為影子盤存在,。 也就是寫數據的時候,會寫兩份,。所以寫的時候的速度并不快,,而且可用容量實際上就只有一塊盤,空間浪費很嚴重,。 RAID 2RAID 0 速度快,,但是沒有備份,RAID 1 有備份,,但是可用容量太少,。 RAID 2 的改進在于引入了校驗盤的概念。當數據損壞的時候,,可以根據校驗盤的數字,,恢復原來磁盤上的數字。 RAID 2采用“漢明碼”來進行校驗,,這種糾錯技術算法比較復雜,,而且需要加入大量的校驗位,比如4位數據編碼,,會加入3位校驗位,。 同時數據存儲的時候,會把每個IO下的數據以位為單位強行打散在每個磁盤,。 磁盤最小的IO單位是512B,,如何寫入1bit?上層IO可以先經過文件系統(tǒng),,然后通過磁盤控制器驅動向磁盤發(fā)出IO,。最終IO大小都是N倍的扇區(qū)。即使只要幾個字節(jié),,也需要讀出整個扇區(qū) 所以每次必須所有聯(lián)動起來一次進行存儲,,如果各磁盤的主軸沒有同步,,則先讀出數據的硬盤需要等待。所以開銷也比較大,。 正因為此,,目前RAID2已經不怎么使用了。 RAID 3RAID 3引入了一種新的校驗算法,,可以將數據盤中的每個位做XOR運算,,然后將結果寫入到校驗盤的對應位置。任何一個扇區(qū)損壞,,可以通過剩余的位和校驗位一起進行XOR運算來獲得丟失的位,。 同時RAID 3 把條帶長度設置為4K字節(jié),因為一般文件系統(tǒng)剛好是4KB一個塊,,所以如果用4塊數據盤,,條帶深度為1KB,也就是2個扇區(qū),。這樣,,可以保證連續(xù)寫的時候,以條帶為單位寫入,,提高并行度,。 所以RAID 2和RAID 3的每次IO都會牽動所有磁盤并行讀寫,每次只能做一個IO,,不適合多IO并發(fā)的情況,。 也說RAID 2和RAID 3適合IO塊大的情況
關于RAID 3的校驗盤有沒有瓶頸的問題 若一個邏輯塊是4KB,,4 1塊盤,,文件系統(tǒng)下發(fā)一個IO至少是以一個邏輯塊為單位的。所以文件系統(tǒng)下發(fā)一次IO,,不管多大都是跨越了所有數據盤的,。
總結起來就是RAID 3適合于連續(xù)大塊的讀和寫,不適合于隨機IO和并發(fā)IO,。 RAID 4
RAID 2和RAID 3已經解決了校驗盤的問題,,避免了一塊盤損壞數據全丟失的問題。但是對于無法得到并發(fā)IO的問題還沒解決,。 RAID 2和RAID 3的思想是讓所有數據盤都參與起來,。對于隨機小塊讀寫,每秒產生的IO數目很大,,但是每個IO的請求數據長度卻很短,,如果所有磁盤同一時刻都在處理一個IO,得不償失,。不如讓這個IO直接寫入一塊磁盤,,其他的做其他的IO。 方法有:
所以 RAID 4 的改進是增加了條帶深度,,RAID 4相對于RAID 3 性能幾乎沒有提升。但是至少讓它可以進行并發(fā)IO RAID 5RAID 4相對于RAID 3 性能幾乎沒有提升,。而且因為每個IO必定會占用校驗盤,, 所以校驗盤成為了瓶頸,,而且是熱點盤,容易壞,。 這樣看來RAID 4其實有些不倫不類,。 RAID 4的關鍵錯誤在于忽略了校驗盤,每個IO不管怎么樣都會讀寫校驗盤的,。 RAID 5的改進在于將校驗盤把校驗盤分割開,,依附于數據盤。把條帶做得很大,,保證每次IO不會占滿整個條帶,。 2塊盤的RAID 5系統(tǒng),對于寫操作來說不能并發(fā)IO,,因為訪問一塊盤的時候,,校驗信息一定在另一塊盤中。同理,,3塊盤也不能 所以最低可以并發(fā)IO的RAID 5 需要4塊盤,,此時最多可以并發(fā)兩個IO,并發(fā)的幾率是0.0322,。 RAID 5 磁盤數量越多,,并發(fā)的幾率越大。 RAID 5與RAID 0相比 RAID 5 是繼RAID 0 , RAID 1以后又一個可以實現(xiàn)并發(fā)IO的陣式,,但是比RAID 1更劃算,,比RAID 0更安全。
RAID 5與RAID 3相比 RAID 5的連續(xù)讀寫不如RAID 3,因為RAID 3 的條帶深度很小,,每次IO可以牽動所有的磁盤為之服務,。 RAID 5 每次IO一般只使用一塊數據盤,先放滿一個Segment,,再去下一個磁盤的Segment存放,,塊編號是橫向進行。 所以RAID 3在IO SIZE大的時候高性能,,RAID 5在隨機IOPS大時有高性能,。 RAID 5的缺點 RAID 5的缺點是寫懲罰:寫性能差,因為每寫一扇區(qū)就要產生其校驗扇區(qū),一并寫入校驗盤,。 新數據過來,,控制器立即讀待更新扇區(qū)的數據,然后讀此條帶的校驗數據根據公式新數據的校驗數據 = (老數據 EOR 新數據) EOR 老校驗數據 得到新校驗數據,,然后寫到磁盤中,。 所以每次寫入都需要更新校驗盤。浪費3個其他動作,,也就是讀老數據,,讀老校驗數據,然后寫新數據和校驗數據,,浪費了除了“寫新數據”之外的操作。
RAID 5EE RAID 5的缺點是不能壞兩塊盤,,因為如果一塊盤壞了,可以用其他數據校驗出,。 可在陣式中增加熱備盤,,不參與組陣,只有在損壞的時候立刻頂替,,其他盤恢復數據,。如果此時有請求此盤的IO,則其他盤暫代,。
RAID 6同樣RAID 6也是為了解決RAID 5只能壞一塊盤的問題。 如果壞了兩塊盤,,相當于存在兩個未知數,,要求解兩個未知數據,一定需要另外一個不相關的等式來求解,。 所以使用兩套算法各自算出一個等式,,分別放在兩塊校驗盤中。 優(yōu)點是更安全,,缺點是寫懲罰更大,。 RAID 卡 軟件RAID運行于操作系統(tǒng)底層,將SCSI 或者IDE控制器提交上來的物理磁盤,,虛擬成虛擬磁盤,,再提交給卷管理程序。但是 軟件RAID :
既然軟件這么多缺點,,所以人們謀求用硬件來實現(xiàn)RAID的方法。 RAID卡就是利用獨立硬件來實現(xiàn)RAID功能的方法,。 一般在SCSI卡上增加了額外的芯片用于RAID功能,。 SCSI RAID卡上一定要包含SCSI控制器,因為其后端連接依然是SCSI的物理磁盤,。 操作系統(tǒng)如何看待邏輯磁盤 RAID控制器向OS提交的是虛擬邏輯盤,,而非所有的物理磁盤。每個邏輯盤對OS來說都是一塊單獨的磁盤,。 比如安裝了2塊IDE磁盤和4塊SCSI磁盤,,IDE直接連接到IDE接口,SCSI連接到PCI接口的SCSI卡上,。 若無RAID,,可以看到6塊硬盤。 可以通過RAID程序把兩塊IDE做成RAID 0 ,, 變成了2*80G = 160G的磁盤,。 4塊SCSI磁盤做RAID 5,相當于3塊盤的容量,,即216GB,。 所以磁盤管理器其實可以看到兩塊硬盤,可以格式化為NTFS等文件格式,。 與分區(qū)對比 與分區(qū)不同,,分區(qū)是OS在物理磁盤上做再次劃分。而RAID 卡提供給OS的是任何時候是一塊或者幾塊的邏輯盤,,也就是OS認為的物理磁盤,。 OS在磁盤上還可以進行分區(qū),格式化,。
RAID 控制器如何管理邏輯磁盤 RAID 卡可以對邏輯磁盤進行再次的劃分,,既然要劃分,,必須對某塊磁盤的某個區(qū)域劃分給那塊邏輯盤用心里有數,所以有必要在每塊磁盤保留一個區(qū)域,,記錄劃分信息,、RAID類型以及組內的磁盤信息。這種統(tǒng)一的RAID信息格式:DDF ,。 RAID卡可針對總線上某幾塊磁盤做一種RAID類型,,然后針對另幾塊磁盤做另一種RAID類型。
邏輯盤就是從RG劃分出來的,,原則上不能跨RG來劃分,,因為RG的RAID類型不一樣,性能就不一樣,。 RAID 卡上的內存 RAID卡上的內存,,有數據緩存和代碼執(zhí)行內存的作用
RAID卡的緩存 對于上層的寫IO,有兩種手段來處理,;
對于讀緩存:
卷管理層到目前為止,,我們已經可以通過RAID卡對外呈現(xiàn)一個一個的邏輯盤了,但是邏輯盤存在一個非常大的問題就是不夠靈活,。 如果一開始就劃分一個100G的邏輯盤,,如果數據盛不下了,此時把其他磁盤上未使用的空間挪一部分到邏輯盤上,。 但是從RAID卡里面增加邏輯盤容量很費功夫,。即使實現(xiàn)了,上層文件系統(tǒng)也無法立刻感知到,。所以對要求不間斷服務的服務器不適用,。 歸根結底,因為RAID控制器是由硬件來實現(xiàn)RAID的,,所以操作起來不靈活,,如果OS把RAID控制器提交上來的邏輯盤,加以組織和再分配,。就非常靈活,,其實就是加一層靈活的管理層。 卷管理層:Volume Manager,,LDM(邏輯磁盤管理) LVM開始是Linux系統(tǒng)上的一種實現(xiàn),,后來移植到AIX和HPUX等系統(tǒng)
大小可以隨時變更,,也不需要重啟OS。前提是還有備用的PP,。 操作很簡單:創(chuàng)建PV,,加入VG ,創(chuàng)建LV,,格式化,,隨便擴展。
卷管理軟件的實現(xiàn) 那么卷管理軟件到底怎么實現(xiàn)的呢,? LVM會記錄某塊物理盤的名稱、容量,,誰是誰,,從哪里到哪里是屬于這塊盤的,,地址是多少等,。這些信息記錄在磁盤某個區(qū)域,LVM中這個區(qū)域叫VGDA LVM可以通過讀取每塊物理磁盤上的這個區(qū)域來獲得LVM的配置信息,,比如PP大小,,初始偏移,PV的數量,,排列順序和映射關系等,。 LVM初始化的時候讀取信息,然后在緩存中生成映射公式,,從而完成LV的掛載,。如果此時上層來一個IO,LVM就需要通過緩存中的映射關系判斷地址對應到實際物理磁盤的哪個地址,。然后通過磁盤控制器驅動直接給這個地址發(fā)數據,。這個地址被RAID控制器接收到了,,還需要做一次轉換。
磁盤在VM這一層處理之后,,稱為卷更為恰當,。因為磁盤控制器看待磁盤,就是盤片 磁頭,,而卷管理軟件看待磁盤,,會認為它是一個線性的大倉庫,而不管倉庫用什么方式存儲,。
** 即從底到上依次是:物理磁盤,、磁盤控制器,、IO總線、總線驅動,、磁盤控制器驅動,、卷管理程序** 在底層磁盤擴容之后,磁盤控制器驅動程序會通知VM已經增大了多少容量
MBR 和VGDA 分區(qū)管理是最簡單的卷管理方式,分區(qū)就是將一個磁盤抽象為一個倉庫,,然后將倉庫劃分為一庫區(qū),、二庫區(qū)等。
分區(qū)信息保存在磁盤上,,位于LBA1這個扇區(qū),,又稱為MBR也就是主引導記錄。 BIOS代碼都是固定的,,所以必定要執(zhí)行MBR上的代碼,,新出來的規(guī)范EFI可以靈活定制從那個磁盤的哪個扇區(qū)啟動, MBR除了包含啟動指令代碼,,還包含了分區(qū)表,。啟動的時候,,程序會跳轉到活動分區(qū)去讀取代碼做OS啟動。所以必須有一個活動分區(qū),。 卷管理軟件在劃分了邏輯卷以后同樣需要記錄卷怎么劃分的,,使用一種叫VGDA的數據結構。 高級VM沒有拋棄MBR,,而是在此基礎上,,增加了類似VGDA的這樣的數據結構來動態(tài)管理磁盤。 文件系統(tǒng)文件系統(tǒng)相當于理貨員,,與庫管員一起完成管理糧庫的工作,。 應用程序只需要告訴文件系統(tǒng)需要放多少的數據或者讀多少數據,而文件系統(tǒng)不需要關心倉庫到底在那里,,放到那個房間,。 文件系統(tǒng)需要將數據存放在那里記錄下來。
數據如果找連續(xù)的簇進行存放,,則還必須花時間把整理倉庫,,整理出連續(xù)的空間來,所以不如在描述數據存放的方式,,比如數據 10000 簇2,6,18,,這樣就可以解決空間浪費的問題,而且不需要經常整理庫,。 但是這樣又存在一個問題,,數據描述的方式變得長短不一,可以為了簡化處理,,需要給一個定長的描述,。比如數據 100000 首簇1,然后在在首簇做一個標記,,寫明下一個簇是多少號,,然后找到下一個簇,,根據簇的路標,,到下下個簇進行取貨,依此類推,。 如果要尋找空的簇,,只需要找格子上沒有寫字的簇即可。 總結一下,,
進一步優(yōu)化: 貨物雖然有可能存放在不連續(xù)的簇中,,但是這些簇往往也是局部連續(xù)的,。所以如果是一段一段的找而不是一簇一簇的找,會節(jié)約時間,。比如簇段1~3,,簇段5~7等等。
如果記錄本丟失,縱然貨物無損,,也無法取出,,因為無法判斷貨物的組織結構了。 文件系統(tǒng)的IO方式 IO Manager是OS內核中專門來管理IO的模塊,,可以協(xié)調文件系統(tǒng),、磁盤驅動的運作,流程如下
文件系統(tǒng)IO:
異步IO和非阻塞IO另一個好處:文件系統(tǒng)不需要等待及時返回數據,可以對上次的IO進行優(yōu)化排隊,。 Direct IO:文件系統(tǒng)有自己的緩存機制,,數據庫也有緩存,IO發(fā)出之前已經經過自己的優(yōu)化了,,如果又在文件系統(tǒng)層面再優(yōu)化一次,,多次一舉。使用Direct IO以后IO請求,、數據請求以及回送數據不被文件系統(tǒng)緩存,,直接進入應用程序的緩存中,,可以提升性能。此外,,在系統(tǒng)路徑上任何一處引入了緩存,,若采用write back模式,都存在數據一致性的問題,,因為Direct IO繞過了文件系統(tǒng)的緩存,,降低了數據不一致性。 附塊存儲,、文件存儲,、對象存儲和分布式存儲的區(qū)別 【塊存儲】典型設備:磁盤陣列,硬盤 塊存儲主要是將裸磁盤空間整個映射給主機使用的,,就是說例如磁盤陣列里面有5塊硬盤(為方便說明,,假設每個硬盤1G),然后可以通過劃邏輯盤,、做Raid,、或者LVM(邏輯卷)等種種方式邏輯劃分出N個邏輯的硬盤。(假設劃分完的邏輯盤也是5個,,每個也是1G,,但是這5個1G的邏輯盤已經于原來的5個物理硬盤意義完全不同了。例如第一個邏輯硬盤A里面,,可能第一個200M是來自物理硬盤1,,第二個200M是來自物理硬盤2,所以邏輯硬盤A是由多個物理硬盤邏輯虛構出來的硬盤,。) 接著塊存儲會采用映射的方式將這幾個邏輯盤映射給主機,,主機上面的操作系統(tǒng)會識別到有5塊硬盤,但是操作系統(tǒng)是區(qū)分不出到底是邏輯還是物理的,,它一概就認為只是5塊裸的物理硬盤而已,,跟直接拿一塊物理硬盤掛載到操作系統(tǒng)沒有區(qū)別的,至少操作系統(tǒng)感知上沒有區(qū)別,。 此種方式下,,操作系統(tǒng)還需要對掛載的裸硬盤進行分區(qū)、格式化后,,才能使用,,與平常主機內置硬盤的方式完全無異。 優(yōu)點: 1,、 這種方式的好處當然是因為通過了Raid與LVM等手段,,對數據提供了保護,。 2,、 另外也可以將多塊廉價的硬盤組合起來,,成為一個大容量的邏輯盤對外提供服務,提高了容量,。 3,、 寫入數據的時候,由于是多塊磁盤組合出來的邏輯盤,,所以幾塊磁盤可以并行寫入的,,提升了讀寫效率。 4,、 很多時候塊存儲采用SAN架構組網,,傳輸速率以及封裝協(xié)議的原因,使得傳輸速度與讀寫速率得到提升,。 缺點: 1,、采用SAN架構組網時,需要額外為主機購買光纖通道卡,,還要買光纖交換機,,造價成本高。 2,、主機之間的數據無法共享,,在服務器不做集群的情況下,塊存儲裸盤映射給主機,,再格式化使用后,,對于主機來說相當于本地盤,那么主機A的本地盤根本不能給主機B去使用,,無法共享數據,。 3、不利于不同操作系統(tǒng)主機間的數據共享:另外一個原因是因為操作系統(tǒng)使用不同的文件系統(tǒng),,格式化完之后,,不同文件系統(tǒng)間的數據是共享不了的。例如一臺裝了WIN7/XP,,文件系統(tǒng)是FAT32/NTFS,,而Linux是EXT4,EXT4是無法識別NTFS的文件系統(tǒng)的,。就像一只NTFS格式的U盤,,插進Linux的筆記本,根本無法識別出來,。所以不利于文件共享,。 【文件存儲】典型設備:FTP、NFS服務器 為了克服上述文件無法共享的問題,所以有了文件存儲,。 文件存儲也有軟硬一體化的設備,,但是其實普通拿一臺服務器/筆記本,只要裝上合適的操作系統(tǒng)與軟件,,就可以架設FTP與NFS服務了,,架上該類服務之后的服務器,就是文件存儲的一種了,。 主機A可以直接對文件存儲進行文件的上傳下載,,與塊存儲不同,主機A是不需要再對文件存儲進行格式化的,,因為文件管理功能已經由文件存儲自己搞定了,。 優(yōu)點: 1、造價交低:隨便一臺機器就可以了,,另外普通以太網就可以,,根本不需要專用的SAN網絡,所以造價低,。 2,、方便文件共享:例如主機A(WIN7,NTFS文件系統(tǒng)),,主機B(Linux,,EXT4文件系統(tǒng)),想互拷一部電影,,本來不行,。加了個主機C(NFS服務器),然后可以先A拷到C,,再C拷到B就OK了,。(例子比較膚淺,請見諒……) 缺點: 讀寫速率低,,傳輸速率慢:以太網,,上傳下載速度較慢,另外所有讀寫都要1臺服務器里面的硬盤來承擔,,相比起磁盤陣列動不動就幾十上百塊硬盤同時讀寫,,速率慢了許多。 【對象存儲】典型設備:內置大容量硬盤的分布式服務器 對象存儲最常用的方案,,就是多臺服務器內置大容量硬盤,,再裝上對象存儲軟件,然后再額外搞幾臺服務作為管理節(jié)點,,安裝上對象存儲管理軟件,。管理節(jié)點可以管理其他服務器對外提供讀寫訪問功能,。 之所以出現(xiàn)了對象存儲這種東西,是為了克服塊存儲與文件存儲各自的缺點,,發(fā)揚它倆各自的優(yōu)點,。簡單來說塊存儲讀寫快,不利于共享,,文件存儲讀寫慢,,利于共享,。能否弄一個讀寫快,,利 于共享的出來呢。于是就有了對象存儲,。 首先,,一個文件包含了了屬性(術語叫metadata,元數據,,例如該文件的大小,、修改時間、存儲路徑等)以及內容(以下簡稱數據),。 以往像FAT32這種文件系統(tǒng),,是直接將一份文件的數據與metadata一起存儲的,存儲過程先將文件按照文件系統(tǒng)的最小塊大小來打散(如4M的文件,,假設文件系統(tǒng)要求一個塊4K,,那么就將文件打散成為1000個小塊),再寫進硬盤里面,,過程中沒有區(qū)分數據/metadata的,。而每個塊最后會告知你下一個要讀取的塊的地址,然后一直這樣順序地按圖索驥,,最后完成整份文件的所有塊的讀取,。 這種情況下讀寫速率很慢,因為就算你有100個機械手臂在讀寫,,但是由于你只有讀取到第一個塊,,才能知道下一個塊在哪里,其實相當于只能有1個機械手臂在實際工作,。 而對象存儲則將元數據獨立了出來,,控制節(jié)點叫元數據服務器(服務器 對象存儲管理軟件),里面主要負責存儲對象的屬性(主要是對象的數據被打散存放到了那幾臺分布式服務器中的信息),,而其他負責存儲數據的分布式服務器叫做OSD,,主要負責存儲文件的數據部分。當用戶訪問對象,,會先訪問元數據服務器,,元數據服務器只負責反饋對象存儲在哪些OSD,,假設反饋文件A存儲在B、C,、D三臺OSD,,那么用戶就會再次直接訪問3臺OSD服務器去讀取數據。 這時候由于是3臺OSD同時對外傳輸數據,,所以傳輸的速度就加快了,。當OSD服務器數量越多,這種讀寫速度的提升就越大,,通過此種方式,,實現(xiàn)了讀寫快的目的。 另一方面,,對象存儲軟件是有專門的文件系統(tǒng)的,,所以OSD對外又相當于文件服務器,那么就不存在文件共享方面的困難了,,也解決了文件共享方面的問題,。 所以對象存儲的出現(xiàn),很好地結合了塊存儲與文件存儲的優(yōu)點,。 最后為什么對象存儲兼具塊存儲與文件存儲的好處,,還要使用塊存儲或文件存儲呢?1,、有一類應用是需要存儲直接裸盤映射的,,例如數據庫。因為數據庫需要存儲裸盤映射給自己后,,再根據自己的數據庫文件系統(tǒng)來對裸盤進行格式化的,,所以是不能夠采用其他已經被格式化為某種文件系統(tǒng)的存儲的。此類應用更適合使用塊存儲,。 2,、對象存儲的成本比起普通的文件存儲還是較高,需要購買專門的對象存儲軟件以及大容量硬盤,。如果對數據量要求不是海量,,只是為了做文件共享的時候,直接用文件存儲的形式好了,,性價比高,。 |
|
來自: 漫步之心情 > 《G.網盤.視頻分享》