圖1 分層存儲(chǔ)成本曲線

單位成本高的介質(zhì),一般來說配置容量小,這樣才能有效地減少TCO,反之亦然。對(duì)于備份與歸檔等類型的應(yīng)用,恰當(dāng)應(yīng)用分層存儲(chǔ)技術(shù),可極大地節(jié)省整個(gè)方案的總體擁有成本。備份與歸檔的數(shù)據(jù)通常擁有許多重復(fù)數(shù)據(jù),然而這些數(shù)據(jù)只在數(shù)據(jù)需要恢復(fù)時(shí),或者需要查詢其中的數(shù)據(jù)時(shí),才會(huì)使用得到。如果我們采用無差別的配置方案,也就是說,全部使用快速在線或者近線存儲(chǔ),需要在容量上保證服務(wù)的執(zhí)行,這將是一筆巨大的開銷。一個(gè)可選的方案是將這些備份或者歸檔的數(shù)據(jù)存放在諸磁帶這類的介質(zhì)中,那么在滿足容量的需求時(shí),也不會(huì)使得成本大幅增加。

有時(shí)分層存儲(chǔ)的使用,在于整合部門或者企業(yè)當(dāng)中不同架構(gòu)之間的存儲(chǔ)設(shè)備。wikibon.org進(jìn)行的終端用戶研究顯示在硬件和軟件上每花1元,還要額外花0.5元在數(shù)據(jù)遷移和陣列使用期間的配置上面。通過分層存儲(chǔ),這一數(shù)字可以降低到每1元硬件軟件只花低于0.1元在遷移和配置上。

其次,存儲(chǔ)的另一個(gè)作用就像內(nèi)存與CPU緩沖作用一樣,用于提高數(shù)據(jù)訪問的性能。也就是將常訪問的數(shù)據(jù)存放在高速介質(zhì)上,而其他的數(shù)據(jù)存放在成本較低,但是容量較大的慢速介質(zhì)上。這樣在訪問常用數(shù)據(jù)時(shí),使用的數(shù)據(jù)讀取時(shí)間較少,從而加快了磁盤存取速度。這種分層技術(shù)的主要目的在于以較少的成本代價(jià),提高存儲(chǔ)介質(zhì)的訪問速度。

內(nèi)存的存取速度通常比磁盤存取速度快上幾個(gè)數(shù)量級(jí),因此在磁盤與內(nèi)存之間還是有很大的性能提升空間。如果我們?nèi)绶ㄅ谥频卦趦?nèi)存與磁盤之間加上另一個(gè)高速磁盤緩存,這樣在不大幅增加成本的情況下,取得較好訪問性能。我們稱這樣的技術(shù)為磁盤分層技術(shù)。

三、 磁盤分層技術(shù)

在大粒度上的分層存儲(chǔ)解決的是存儲(chǔ)容量和成本問題,即在滿足應(yīng)用性能的需求下,增大設(shè)備的容量,但又不導(dǎo)致大量成本的增加。當(dāng)前,磁盤轉(zhuǎn)速越來越大,數(shù)據(jù)傳輸率也是水漲船高,但同時(shí)也帶來了一些問題。比如耗電與散熱問題。特別是機(jī)械式磁盤總會(huì)面臨物理極限。因此在這樣的背景下,存儲(chǔ)廠商開發(fā)了電子式磁盤,稱之為固態(tài)磁盤(SSD)。SSD的好處剛好彌補(bǔ)了機(jī)械式磁盤的缺陷,耗電少,沒有機(jī)械摩擦,沒有機(jī)械噪音等。但其制造成本也相對(duì)高出許多。當(dāng)前的應(yīng)用,最理想的情況下自然是使用的磁盤越快越好,但高昂成本導(dǎo)致這樣的應(yīng)用方案的使用受到極大局限。那么我們可不可以在更小的粒度上對(duì)數(shù)據(jù)進(jìn)行分層呢?答案是肯定的。

在計(jì)算機(jī)領(lǐng)域里面,有一個(gè)著名的局部性原理,這個(gè)原理是計(jì)算機(jī)體系結(jié)構(gòu)重要的設(shè)計(jì)基礎(chǔ)之一。這個(gè)原理內(nèi)容說的是:進(jìn)程運(yùn)行時(shí),在一段時(shí)間內(nèi),其程序的執(zhí)行往往呈現(xiàn)出高度的局部性,包括時(shí)間局部性和空間局部性。時(shí)間局部性指的是若一條指令被執(zhí)行,則在不久的將來,它可能再被執(zhí)行??臻g局部性是指一旦一個(gè)存儲(chǔ)單元被訪問,那它附近的單元也將很快被訪問。如果我們?cè)诖疟P訪問單位這樣的粒度上對(duì)數(shù)據(jù)進(jìn)行分層,將熱點(diǎn)數(shù)據(jù)存在高速磁盤上,而將一些非熱點(diǎn)的數(shù)據(jù)存放在低速磁盤上,這樣我們可以充分利用高速磁盤的速度,也利用于低價(jià)磁盤的容量。因此在保證容量需求的同時(shí),增加的成本相對(duì)較少,是物有所值的。如下圖是數(shù)據(jù)遷移的路徑:

圖2 磁盤分層存儲(chǔ)

Tier0是高速磁盤,比如SSD磁盤。而Tier1則可能是大轉(zhuǎn)速的SAS磁盤,或者FC磁盤,最后一級(jí)則是普通磁盤。數(shù)據(jù)在不同層之間自動(dòng)遷移,磁盤用戶根本不知道各種存儲(chǔ)層的存在,就好像軟件無需了解CPU高速緩存的存在一樣。

四、 如何利用磁盤分層存儲(chǔ)

作為一種低成本的分層方案,主要目的不是提供大容量的存儲(chǔ)空間,而是提供在滿足用戶對(duì)磁盤容量的需求下,提升磁盤性能,同時(shí)不會(huì)大幅增加投資。因此這樣的磁盤分層存儲(chǔ)不適用于備份,歸檔這樣的應(yīng)用,而應(yīng)該使用在對(duì)磁盤性能要求較高的應(yīng)用中,如一些IO密集型的類型任務(wù)。由于磁盤分層存儲(chǔ)對(duì)于應(yīng)用來說是透明存在的,因此可以在不用改動(dòng)任何應(yīng)用的情況下就能提高應(yīng)用性能。

五、 結(jié)語

分層存儲(chǔ)是舊的技術(shù),但在新的應(yīng)用環(huán)境中有了新的內(nèi)容和生命力。分層存儲(chǔ)只是一種技術(shù),因此需要將這個(gè)概念轉(zhuǎn)變成一種新的應(yīng)用需要對(duì)自己的環(huán)境進(jìn)行評(píng)估與分析。當(dāng)前數(shù)據(jù)備份隨著數(shù)據(jù)的大量電子化而成為一個(gè)不可缺少的功能。D2D2T的備份方式只是分層存儲(chǔ)概念應(yīng)用中的一個(gè)例子。愛數(shù)的備份存儲(chǔ)柜將這樣的功能引入到產(chǎn)品中,使用戶無需再自己花費(fèi)大量精力布署分層應(yīng)用。隨著存儲(chǔ)與備份技術(shù)的不斷發(fā)展,分層存儲(chǔ)技術(shù)還將得到不斷深化與細(xì)化。合理應(yīng)用分層存儲(chǔ),不但可以給自己的業(yè)務(wù)帶來性能上的提升,管理上的便利,同時(shí)還能節(jié)省成本投入。

參考:

1. Hierarchical storage management,http://en.wikipedia.org/wiki/Hierarchical_storage_management

2. 分層存儲(chǔ)架構(gòu)的原理與實(shí)施選擇,http://www.xker.com/page/e2009/0115/68421.html

3. Automated Tiered Storage http://www.compellent.com/Products/Software/Automated-Tiered-Storage.aspx

分享到

lixuyang

相關(guān)推薦