什么是對(duì)象存儲(chǔ)?
作者:中國(guó)存儲(chǔ)網(wǎng)出處:博客2011-06-30 11:53
什么是對(duì)象存儲(chǔ)? 存儲(chǔ)局域網(wǎng)(SAN)和網(wǎng)絡(luò)附加存儲(chǔ)(NAS)是我們比較熟悉的兩種主流網(wǎng)絡(luò)存儲(chǔ)架構(gòu),而對(duì)象存儲(chǔ)(Object-based Storage)是一種新的網(wǎng)絡(luò)存儲(chǔ)架構(gòu),基于對(duì)象存儲(chǔ)技術(shù)的設(shè)備就是對(duì)象存儲(chǔ)設(shè)備(Object-based Storage Device)簡(jiǎn)稱(chēng)OSD。 對(duì)象存儲(chǔ)的發(fā)展歷史: 1999年成立的全球網(wǎng)絡(luò)存儲(chǔ)工業(yè)協(xié)會(huì)(SNIA)的對(duì)象存儲(chǔ)設(shè)備(Object Storage Device)工作組發(fā)布了ANSI的X3T10標(biāo)準(zhǔn)。 對(duì)象存儲(chǔ)的優(yōu)點(diǎn): 總體上來(lái)講,對(duì)象存儲(chǔ)同兼具SAN高速直接訪(fǎng)問(wèn)磁盤(pán)特點(diǎn)及NAS的分布式共享特點(diǎn)。 SAN(Storage Area Network)結(jié)構(gòu) 采用SCSI 塊I/O的命令集,通過(guò)在磁盤(pán)或FC(Fiber Channel)級(jí)的數(shù)據(jù)訪(fǎng)問(wèn)提供高性能的隨機(jī)I/O和數(shù)據(jù)吞吐率,它具有高帶寬、低延遲的優(yōu)勢(shì),在高性能計(jì)算中占有一席之地,如SGI的CXFS文件系 統(tǒng)就是基于SAN實(shí)現(xiàn)高性能文件存儲(chǔ)的,但是由于SAN系統(tǒng)的價(jià)格較高,且可擴(kuò)展性較差,已不能滿(mǎn)足成千上萬(wàn)個(gè)CPU規(guī)模的系統(tǒng)。 來(lái)自中國(guó)存儲(chǔ)網(wǎng) ChinaStor.com NAS(Network Attached Storage)結(jié)構(gòu) 它采用NFS或CIFS命令集訪(fǎng)問(wèn)數(shù)據(jù),以文件為傳輸協(xié)議,通過(guò)TCP/IP實(shí)現(xiàn)網(wǎng)絡(luò)化存儲(chǔ),可擴(kuò)展性好、價(jià)格便宜、用戶(hù)易管理,如目前在集群計(jì)算中應(yīng)用較多的NFS文件系統(tǒng),但由于NAS的協(xié)議開(kāi)銷(xiāo)高、帶寬低、延遲大,不利于在高性能集群中應(yīng)用。 對(duì)象存儲(chǔ)結(jié)構(gòu) 核心是將數(shù)據(jù)通路(數(shù)據(jù)讀或?qū)?和控制通路(元數(shù)據(jù))分離,并且基于對(duì)象存儲(chǔ)設(shè)備(Object-based Storage Device,OSD)構(gòu)建存儲(chǔ)系統(tǒng),每個(gè)對(duì)象存儲(chǔ)設(shè)備具有一定的智能,能夠自動(dòng)管理其上的數(shù)據(jù)分布。 對(duì)象存儲(chǔ)結(jié)構(gòu)組成部分(對(duì)象、對(duì)象存儲(chǔ)設(shè)備、元數(shù)據(jù)服務(wù)器、對(duì)象存儲(chǔ)系統(tǒng)的客戶(hù)端): 對(duì)象存儲(chǔ)架構(gòu) 1、對(duì)象 對(duì)象是系統(tǒng)中數(shù)據(jù)存儲(chǔ)的基本單位,一個(gè)對(duì)象實(shí)際上就是文件的數(shù)據(jù)和一組屬性信息(Meta Data)的組合,這些屬性信息可以定義基于文件的RAID參數(shù)、數(shù)據(jù)分布和服務(wù)質(zhì)量等,而傳統(tǒng)的存儲(chǔ)系統(tǒng)中用文件或塊作為基本的存儲(chǔ)單位,在塊存儲(chǔ)系統(tǒng) 中還需要始終追蹤系統(tǒng)中每個(gè)塊的屬性,對(duì)象通過(guò)與存儲(chǔ)系統(tǒng)通信維護(hù)自己的屬性。在存儲(chǔ)設(shè)備中,所有對(duì)象都有一個(gè)對(duì)象標(biāo)識(shí),通過(guò)對(duì)象標(biāo)識(shí)OSD命令訪(fǎng)問(wèn)該對(duì) 象。通常有多種類(lèi)型的對(duì)象,存儲(chǔ)設(shè)備上的根對(duì)象標(biāo)識(shí)存儲(chǔ)設(shè)備和該設(shè)備的各種屬性,組對(duì)象是存儲(chǔ)設(shè)備上共享資源管理策略的對(duì)象集合等。 對(duì)象的層次關(guān)系理解(圖片來(lái)源SNIA) 對(duì)象的組成(圖形來(lái)源Oracle) 2、對(duì)象存儲(chǔ)設(shè)備對(duì)象存儲(chǔ)設(shè)備具有一定的智能,它有自己的CPU、內(nèi)存、網(wǎng)絡(luò)和磁盤(pán)系統(tǒng),OSD同塊設(shè)備的不同不在于存儲(chǔ)介質(zhì),而在于兩者提供的訪(fǎng)問(wèn)接口。OSD的主要功能包括數(shù)據(jù)存儲(chǔ)和安全訪(fǎng)問(wèn)。目前國(guó)際上通常采用刀片式結(jié)構(gòu)實(shí)現(xiàn)對(duì)象存儲(chǔ)設(shè)備。OSD提供三個(gè)主要功能: (1) 數(shù)據(jù)存儲(chǔ)。OSD管理對(duì)象數(shù)據(jù),并將它們放置在標(biāo)準(zhǔn)的磁盤(pán)系統(tǒng)上,OSD不提供塊接口訪(fǎng)問(wèn)方式,Client請(qǐng)求數(shù)據(jù)時(shí)用對(duì)象ID、偏移進(jìn)行數(shù)據(jù)讀寫(xiě)。 (2) 智能分布。OSD用其自身的CPU和內(nèi)存優(yōu)化數(shù)據(jù)分布,并支持?jǐn)?shù)據(jù)的預(yù)取。由于OSD可以智能地支持對(duì)象的預(yù)取,從而可以?xún)?yōu)化磁盤(pán)的性能。 (3) 每個(gè)對(duì)象元數(shù)據(jù)的管理。OSD管理存儲(chǔ)在其上對(duì)象的元數(shù)據(jù),該元數(shù)據(jù)與傳統(tǒng)的inode元數(shù)據(jù)相似,通常包括對(duì)象的數(shù)據(jù)塊和對(duì)象的長(zhǎng)度。而在傳統(tǒng)的NAS 系統(tǒng)中,這些元數(shù)據(jù)是由文件服務(wù)器維護(hù)的,對(duì)象存儲(chǔ)架構(gòu)將系統(tǒng)中主要的元數(shù)據(jù)管理工作由OSD來(lái)完成,降低了Client的開(kāi)銷(xiāo)。 3、元數(shù)據(jù)服務(wù)器(Metadata Server,MDS) MDS控制Client與OSD對(duì)象的交互,主要提供以下幾個(gè)功能: (1) 對(duì)象存儲(chǔ)訪(fǎng)問(wèn)。 MDS構(gòu)造、管理描述每個(gè)文件分布的視圖,允許Client直接訪(fǎng)問(wèn)對(duì)象。MDS為Client提供訪(fǎng)問(wèn)該文件所含對(duì)象的能力,OSD在接收到每個(gè)請(qǐng)求時(shí)將先驗(yàn)證該能力,然后才可以訪(fǎng)問(wèn)。 (2) 文件和目錄訪(fǎng)問(wèn)管理。 MDS在存儲(chǔ)系統(tǒng)上構(gòu)建一個(gè)文件結(jié)構(gòu),包括限額控制、目錄和文件的創(chuàng)建和刪除、訪(fǎng)問(wèn)控制等。 (3) Client Cache一致性。 為了提高Client性能,在對(duì)象存儲(chǔ)系統(tǒng)設(shè)計(jì)時(shí)通常支持Client方的Cache。由于引入Client方的Cache,帶來(lái)了Cache 一致性問(wèn)題,MDS支持基于Client的文件Cache,當(dāng)Cache的文件發(fā)生改變時(shí),將通知Client刷新Cache,從而防止Cache不一致 引發(fā)的問(wèn)題。 4、對(duì)象存儲(chǔ)系統(tǒng)的客戶(hù)端Client 為了有效支持Client支持訪(fǎng)問(wèn)OSD上的對(duì)象,需要在計(jì)算節(jié)點(diǎn)實(shí)現(xiàn)對(duì)象存儲(chǔ)系統(tǒng)的Client,通常提供POSIX文件系統(tǒng)接口,允許應(yīng)用程序像執(zhí)行標(biāo)準(zhǔn)的文件系統(tǒng)操作一樣。 對(duì)象存儲(chǔ)文件系統(tǒng)的關(guān)鍵技術(shù) 1、分布元數(shù)據(jù) 傳統(tǒng)的存儲(chǔ)結(jié)構(gòu)元數(shù)據(jù)服務(wù)器通常提供兩個(gè)主要功能。 (1)為計(jì)算結(jié)點(diǎn)提供一個(gè)存儲(chǔ)數(shù)據(jù)的邏輯視圖(Virtual File System,VFS層),文件名列表及目錄結(jié)構(gòu)。 (2)組織物理存儲(chǔ)介質(zhì)的數(shù)據(jù)分布(inode層)。對(duì)象存儲(chǔ)結(jié)構(gòu)將存儲(chǔ)數(shù)據(jù)的邏輯視圖與物理視圖分開(kāi),并將負(fù)載分布,避免元數(shù)據(jù)服務(wù)器引起的瓶頸 (如NAS系統(tǒng))。元數(shù)據(jù)的VFS部分通常是元數(shù)據(jù)服務(wù)器的10%的負(fù)載,剩下的90%工作(inode部分)是在存儲(chǔ)介質(zhì)塊的數(shù)據(jù)物理分布上完成的。在 對(duì)象存儲(chǔ)結(jié)構(gòu),inode工作分布到每個(gè)智能化的OSD,每個(gè)OSD負(fù)責(zé)管理數(shù)據(jù)分布和檢索,這樣90%的元數(shù)據(jù)管理工作分布到智能的存儲(chǔ)設(shè)備,從而提高 了系統(tǒng)元數(shù)據(jù)管理的性能。另外,分布的元數(shù)據(jù)管理,在增加更多的OSD到系統(tǒng)中時(shí),可以同時(shí)增加元數(shù)據(jù)的性能和系統(tǒng)存儲(chǔ)容量。 2、并發(fā)數(shù)據(jù)訪(fǎng)問(wèn) 對(duì)象存儲(chǔ)體系結(jié)構(gòu)定義了一個(gè)新的、更加智能化的磁盤(pán)接口OSD。OSD是與網(wǎng)絡(luò)連接的設(shè)備,它自身包含存儲(chǔ)介質(zhì),如磁盤(pán)或磁帶,并具有足夠的智能可以管理 本地存儲(chǔ)的數(shù)據(jù)。計(jì)算結(jié)點(diǎn)直接與OSD通信,訪(fǎng)問(wèn)它存儲(chǔ)的數(shù)據(jù),由于OSD具有智能,因此不需要文件服務(wù)器的介入。如果將文件系統(tǒng)的數(shù)據(jù)分布在多個(gè)OSD 上,則聚合I/O速率和數(shù)據(jù)吞吐率將線(xiàn)性增長(zhǎng),對(duì)絕大多數(shù)Linux集群應(yīng)用來(lái)說(shuō),持續(xù)的I/O聚合帶寬和吞吐率對(duì)較多數(shù)目的計(jì)算結(jié)點(diǎn)是非常重要的。對(duì)象 存儲(chǔ)結(jié)構(gòu)提供的性能是目前其它存儲(chǔ)結(jié)構(gòu)難以達(dá)到的,如ActiveScale對(duì)象存儲(chǔ)文件系統(tǒng)的帶寬可以達(dá)到10GB/s。 |
|
來(lái)自: when幸福來(lái)敲門(mén) > 《Storage》