0 引言
由于信息數(shù)據(jù)進(jìn)入高速增長(zhǎng)的時(shí)代,在滿足存儲(chǔ)容量需求的同時(shí),用戶需要根據(jù)數(shù)據(jù)的特性選擇相應(yīng)的存儲(chǔ)介質(zhì)進(jìn)行存儲(chǔ)以提高存儲(chǔ)系統(tǒng)的性價(jià)比。分層存儲(chǔ)系統(tǒng)就是將數(shù)據(jù)存儲(chǔ)在不同層次的介質(zhì)中,并在它們之間進(jìn)行自動(dòng)或者手動(dòng)的數(shù)據(jù)移動(dòng)和讀寫等操作。因此設(shè)計(jì)一個(gè)數(shù)據(jù)遷移策略來實(shí)現(xiàn)數(shù)據(jù)在各個(gè)存儲(chǔ)層及時(shí)有效的遷移是個(gè)關(guān)鍵的問題。
在數(shù)據(jù)遷移中,遷移時(shí)間的確定尤為重要,它必須考慮到使用存儲(chǔ)的應(yīng)用需求以及存儲(chǔ)系統(tǒng)本身的特性。例如在數(shù)據(jù)的容災(zāi)備份中,遷移時(shí)間可根據(jù)數(shù)據(jù)的安全需求來設(shè)計(jì);對(duì)一些商業(yè)存儲(chǔ)系統(tǒng),遷移時(shí)間可根據(jù)業(yè)務(wù)程來設(shè)計(jì);而在高性能計(jì)算中,由于各個(gè)計(jì)算任務(wù)的規(guī)模和復(fù)雜度等各不相同,計(jì)算和存儲(chǔ)過程不明確,遷移時(shí)間設(shè)計(jì)就比較復(fù)雜。同時(shí),高性能計(jì)算追求較快的存儲(chǔ)速度,因此提高高速存儲(chǔ)層的利用率也非常重要。
目前國(guó)內(nèi)外對(duì)分層存儲(chǔ)中數(shù)據(jù)遷移技術(shù)進(jìn)行了大量的研究,但對(duì)遷移時(shí)間研究相對(duì)較少。文獻(xiàn)[13]根據(jù)存儲(chǔ)容量來設(shè)置數(shù)據(jù)遷移的時(shí)問。若將容量設(shè)置過高,可能會(huì)因?yàn)榇鎯?chǔ)層內(nèi)數(shù)據(jù)增至過快而導(dǎo)致遷移失敗,設(shè)置偏低會(huì)降低存儲(chǔ)的使用率,因此遷移時(shí)間的設(shè)計(jì)需要分析數(shù)據(jù)的增長(zhǎng)趨勢(shì)和存儲(chǔ)系統(tǒng)傳輸速率對(duì)遷移的影響。
1 分層存儲(chǔ)和數(shù)據(jù)遷移
分層存儲(chǔ)系統(tǒng)一般包括三部分。第一部分是磁盤池,它包括了多種存儲(chǔ)介質(zhì)的物理磁盤,并可通過這些介質(zhì)的物理特性進(jìn)行分層管理。例如由SSD硬盤、SATA硬盤構(gòu)建的存儲(chǔ)系統(tǒng)中,可分為SSD層和SATA層。第二部分是位于中間的存儲(chǔ)控制部分,它具有管理數(shù)據(jù)分布和遷移、實(shí)現(xiàn)存儲(chǔ)虛擬化等功能。最后部分是提供給不同應(yīng)用使用的邏輯存儲(chǔ)系統(tǒng),它一般由Volume組成。整個(gè)分層存儲(chǔ)基本架構(gòu)如圖1所示。
圖1 分層存儲(chǔ)系統(tǒng)的基本架構(gòu)
分層存儲(chǔ)控制層中的數(shù)據(jù)遷移實(shí)際上是在多層存儲(chǔ)內(nèi)基于策略的自動(dòng)放置文件的過程。遷移一般過程是:根據(jù)策略規(guī)則,系統(tǒng)在指定的存儲(chǔ)層創(chuàng)建和擴(kuò)展一些文件;當(dāng)遷移被觸發(fā)且執(zhí)行時(shí),將文件價(jià)值滿足遷移條件的文件重定位到相應(yīng)的存儲(chǔ)層,實(shí)現(xiàn)遷移。其中文件開始遷移的時(shí)間稱為遷移時(shí)間。文件價(jià)值指的是文件在整個(gè)文件系統(tǒng)中的重要性和活躍度,它決定了數(shù)據(jù)遷移策略能否有效執(zhí)行。遷移條件根據(jù)實(shí)際需求來設(shè)定,由遷移條件決定參與遼移的文件。
2 遷移時(shí)間的分析與設(shè)計(jì)
某一層存儲(chǔ)的數(shù)據(jù)遷移時(shí)間與存儲(chǔ)容量相關(guān),但簡(jiǎn)單或憑經(jīng)驗(yàn)去設(shè)置一個(gè)容量值來確定遷移時(shí)間是不合理的,它沒有反映存儲(chǔ)容量的變化趨勢(shì),也沒有結(jié)合存儲(chǔ)設(shè)備的特性和應(yīng)用需求來使用存儲(chǔ),同時(shí)可能造成因容量增長(zhǎng)過快而無法及時(shí)地遷出數(shù)據(jù)的情況,即遷移堵塞。本文從存儲(chǔ)系統(tǒng)的傳輸速率、存儲(chǔ)層使用量和使用量的變化趨勢(shì)三方面來考慮遷移時(shí)間,下面給出它們的描述。存儲(chǔ)系統(tǒng)的傳輸速率。存儲(chǔ)系統(tǒng)的傳輸速率包括讀出/寫入存儲(chǔ)系統(tǒng)的速率和系統(tǒng)內(nèi)部數(shù)據(jù)在各存儲(chǔ)層遷移的速率。它們受限于文件系統(tǒng)、網(wǎng)絡(luò)、raid設(shè)置、存儲(chǔ)系統(tǒng)和存儲(chǔ)介質(zhì)等因素。實(shí)際的速率值取各相關(guān)因素對(duì)應(yīng)速率中的最小值。
存儲(chǔ)使用量。記錄存儲(chǔ)介質(zhì)內(nèi)存放數(shù)據(jù)的容量大小。它包括存儲(chǔ)層的使用量和存儲(chǔ)系統(tǒng)的使用量。
存儲(chǔ)層使用量增長(zhǎng)率。反映存儲(chǔ)層的使用量在某個(gè)時(shí)間段的增長(zhǎng)趨勢(shì)。
如果存儲(chǔ)層的使用量在某個(gè)時(shí)間段按固定的速率增長(zhǎng),稱之為線性增長(zhǎng)(1inear increase,LI),反之是非線性增長(zhǎng)(nonlinear increase,NI)。在非線性增長(zhǎng)盼隋況下,如果增長(zhǎng)率高于固定的增長(zhǎng)率,表明存儲(chǔ)層使用量高速增長(zhǎng)(SU—per linear increase,SLI),反之表明存儲(chǔ)層使用量低速增長(zhǎng)(10w linear increase,LLI)。圖2顯示了LI、SLI和LLI在一段時(shí)間內(nèi)存儲(chǔ)層容量的變換。
圖2 LI、SLI和LLI下存儲(chǔ)層使用量的變化
在數(shù)據(jù)存儲(chǔ)過程中,如果存儲(chǔ)層使用量增長(zhǎng)過快,并且存儲(chǔ)系統(tǒng)本身傳輸速率比較低,就需要對(duì)它進(jìn)行數(shù)據(jù)遷移,以免遷移堵塞導(dǎo)致遷移失敗。
遷移上限和遷移下限。它們是一個(gè)使用量的閥值,遷移上限大于或等于遷移下限。
由上述遷移條件,本文設(shè)計(jì)了遷移時(shí)間的判定過程,如下:
(1)定時(shí)監(jiān)控某存儲(chǔ)層使用量,當(dāng)其超過遷移下限a時(shí),進(jìn)入(2)。
(2)若使用量繼續(xù)增加超過遷移上限b時(shí)(b>a),執(zhí)行(4)。反之進(jìn)入第(3)步。
(3)若寫入存儲(chǔ)系統(tǒng)的速率超過存儲(chǔ)系統(tǒng)內(nèi)部數(shù)據(jù)遷出最大速率時(shí),或在單位時(shí)間t內(nèi)滿足表達(dá)式(2),則執(zhí)行第(4)步。反之轉(zhuǎn)到第(2)步。
(4)執(zhí)行數(shù)據(jù)遷移。
(5)數(shù)據(jù)遷移完畢。
本文結(jié)合使用量變化趨勢(shì)、傳輸速率和遷移上下限來設(shè)定遷移時(shí)間,能有效的緩解遷移堵塞。主要方法包括:
降低式(2)中固定速率,將符合遷移條件的文件數(shù)據(jù)提前遷移;降低遷移下限,擴(kuò)大可執(zhí)行遷移的時(shí)間范圍。遷移上限和下限的設(shè)置可改變存儲(chǔ)層的利用率,將遷移上限和下限適當(dāng)提高,就可提高相應(yīng)存儲(chǔ)層的利用率。整個(gè)判定過程考慮了系統(tǒng)的硬件特性和應(yīng)用的需求,并采用了數(shù)學(xué)公式進(jìn)行定量分析,這為數(shù)據(jù)遷移的實(shí)現(xiàn)提供了很好的基礎(chǔ)。
3 遷移時(shí)間在數(shù)據(jù)遷移中的實(shí)現(xiàn)
根據(jù)前文的描述,一個(gè)完整的數(shù)據(jù)遷移策略必須考慮分層存儲(chǔ)設(shè)備的特性、應(yīng)用的要求和數(shù)據(jù)的特征等方面,從遷移時(shí)間、文件的價(jià)值和遷移策略等來制定。
3.1文件的價(jià)值
不同的應(yīng)用決定文件價(jià)值的因素各不相同。這些因素有文件的訪問時(shí)限、I/O熱度,文件大小和文件安全性等等。本文主要分析遷移時(shí)間的作用,為避免其它因素對(duì)實(shí)驗(yàn)結(jié)果造成影響,僅考慮文件的訪問時(shí)限,下面給出它的定義。
文件訪問時(shí)限(ACCAGE)。該參數(shù)記錄了數(shù)據(jù)遷移的時(shí)間與應(yīng)用程序上次訪問該文件的時(shí)間之間的間隔。假設(shè)執(zhí)行遷移的時(shí)間為T,文件a最近被訪問的時(shí)間為ta,則ACCAGE=T—t。若ACCAGE越大,表明在本次遷移之前,文件a越久沒有被應(yīng)用程序訪問,因此文件a的價(jià)值就越低。
3.2文件信息記錄
遷移過程中的遷移時(shí)間、文件價(jià)值和遷移條件等都需要準(zhǔn)確的參數(shù)值。Symantec提供的FCL(file change log)工具可以記錄文件系統(tǒng)中文件和目錄的變化。盡管它不能記錄實(shí)際數(shù)據(jù)的變化,但可通過文件的變化來記錄數(shù)據(jù)大小、I/O讀寫、訪問時(shí)間等信息。同時(shí),我們可以通過加載FCI。的頭文件fcI.h和vxfsutil.h來使用FCL。提供的API,編寫相應(yīng)的程序。本文采用FCL工具來獲取文件的信息并計(jì)算相關(guān)參數(shù)作為數(shù)據(jù)遷移的文件價(jià)值。
3.3結(jié)合遷移時(shí)問的遷移策略
數(shù)據(jù)遷移解決的是數(shù)值放置的問題。數(shù)據(jù)放置包括初始數(shù)據(jù)的放置和遷移后數(shù)據(jù)的放置。一般情況,初始數(shù)據(jù)是即將要使用的數(shù)據(jù),可放在高速存儲(chǔ)層上。如果高速存儲(chǔ)層被完全使用,可自動(dòng)將初始數(shù)據(jù)保存到下一層存儲(chǔ)上以實(shí)現(xiàn)初始數(shù)據(jù)在整個(gè)分層存儲(chǔ)的安全放置。
數(shù)據(jù)遷移需要根據(jù)實(shí)際需求確定遷移時(shí)間和遷移條件。當(dāng)數(shù)據(jù)開始遷移時(shí),系統(tǒng)將滿足遷移條件的文件放置到指定存儲(chǔ)層。遷移條件可根據(jù)應(yīng)用需求來設(shè)定。例如可設(shè)置為一小時(shí)能未放訪問的數(shù)據(jù)被遷移等。存儲(chǔ)層的數(shù)據(jù)遷移過程如下:
(1)啟動(dòng)遷移監(jiān)控器。
(2)記錄文件信息,并按照文件價(jià)值大小排序。
(3)到達(dá)遷移時(shí)間,開始遷移滿足遷移條件的數(shù)據(jù)。
(4)遷移完成后,重新記錄文件信息。
(5)返回遷移監(jiān)控器,等待下一次遷移啟動(dòng)。
圖3是結(jié)合遷移時(shí)間的數(shù)據(jù)遷移流程。
圖3 加入遷移時(shí)間的數(shù)據(jù)遷移流程
4 驗(yàn)證
為測(cè)試遷移時(shí)間在遷移策略中所起的作用,本文將DX80和MSAl000存儲(chǔ)整列提供的Volume整合為分層存儲(chǔ)系統(tǒng)。
該存儲(chǔ)系統(tǒng)通過4GB的光纖與上海大學(xué)自強(qiáng)3000高性能集群機(jī)相連。自強(qiáng)3000集群機(jī)主要運(yùn)行與高性能計(jì)算相關(guān)的科學(xué)計(jì)算,計(jì)算任務(wù)涉及材料、力學(xué)、能源、生物、化學(xué)和汁算機(jī)體系結(jié)構(gòu)等領(lǐng)域,并運(yùn)行了多種商業(yè)并行軟件和自編并行程序。該集群機(jī)在2004年全球超級(jí)計(jì)算機(jī)TOP500排名列126位,計(jì)算速度領(lǐng)先于劍橋等英國(guó)大學(xué)所擁有計(jì)算機(jī),超過日本多數(shù)大學(xué),超過俄羅斯各大學(xué)計(jì)算機(jī)。2004年中國(guó)TOP 100名列第6位,國(guó)內(nèi)高校名列第2位:1 4。
DX80和MSAl000兩臺(tái)存儲(chǔ)整列通過千兆以太網(wǎng)相連,為高性能計(jì)算提供存儲(chǔ)服務(wù)。其中DX80內(nèi)部采用了8GB的交換總線,磁盤的持續(xù)讀寫速率為3020MB/S傳輸速率,MSAl000的平均傳輸速率也達(dá)到了320MWS。由于傳輸大小文件的速率各不相同,千兆以太網(wǎng)的實(shí)測(cè)最高傳輸速率在40—80MWS之間,而光纖的實(shí)測(cè)傳輸速率是千兆加入遷移時(shí)間的數(shù)據(jù)遷移流程以太網(wǎng)的3—4倍左右。因此,本文構(gòu)建的兩層存儲(chǔ)測(cè)試環(huán)境中傳輸速率主要受限于千兆以太網(wǎng)的傳輸速率。本文稱DX80提供的存儲(chǔ)為DX層,MSAl000提供的存儲(chǔ)層為MSA層,容量分別為99GB和160GB。各個(gè)存儲(chǔ)層的相關(guān)信息見表1。
表1 DX和MSA存儲(chǔ)層的相關(guān)信息
我們將以存儲(chǔ)層容量作為判定遷移時(shí)間的數(shù)據(jù)遷移策略和結(jié)合了本文遷移時(shí)間的數(shù)據(jù)遷移策略依次部署到該分層存儲(chǔ)系統(tǒng)上,并將存儲(chǔ)容量的80%作為容量閥值,該值決定前者的遷移時(shí)問。在本文的遷移時(shí)間設(shè)計(jì)中,遷移上下限分別設(shè)置為存儲(chǔ)層容量的90%和80%。
由于DX80存儲(chǔ)整列的傳輸速率相對(duì)較快,所以我們希望在高性能計(jì)算下提高DX80存儲(chǔ)層的使用率。因此遷移策略設(shè)置如下:新數(shù)據(jù)被認(rèn)為是即將要使用的數(shù)據(jù),其文件價(jià)值最高,被首先被存放在高速的DX80存儲(chǔ)層;其它文件價(jià)值按先后創(chuàng)建的順序自小到大排列;若DX80到達(dá)遷移時(shí)間,文件價(jià)值小的數(shù)據(jù)將被遷移到MSA層。
圖4顯示了在兩種遷移策略作用下,DX存儲(chǔ)層使用量和存儲(chǔ)系統(tǒng)存儲(chǔ)使用量的變化.其中DX層一1是僅考慮存儲(chǔ)容量的遷移策略,DX層一2是本文設(shè)計(jì)的遷移策略,上面的虛線表示遷移上限,下面的虛線表示遷移下限和容量閥值。由圖可知,DX層一1的使用率整體低于DX層一2,并且隨著系統(tǒng)存儲(chǔ)量的加速增長(zhǎng),出現(xiàn)了遷移堵塞。
圖4 兩種遷移策略下的DX層和系統(tǒng)使用量變化
本文設(shè)計(jì)的遷移策略在數(shù)據(jù)長(zhǎng)時(shí)問快速增長(zhǎng)的極端情況下,也會(huì)出現(xiàn)遷移堵塞,但可以通過降低使用量變化公式中的固定速率來延遲遷移堵塞。圖5的DX層-3和DX層-4中,固定速率分別為60MB/S和50MB/S,在相同的數(shù)據(jù)高速增長(zhǎng)情況下,DX層-4能夠?qū)⑦w移堵塞延遲到DX層3的4.9倍的時(shí)間發(fā)生。在實(shí)際應(yīng)用中,存儲(chǔ)層的存儲(chǔ)空間遠(yuǎn)遠(yuǎn)大于本文的實(shí)驗(yàn)環(huán)境,因此該方法具有可行性。
圖5 兩種固定速率下DX層的使用量變化
5 結(jié)束語
在遷移時(shí)間的設(shè)計(jì)過程中,通過數(shù)學(xué)公式能容易判斷存儲(chǔ)層使用量的變化趨勢(shì)。將變化趨勢(shì)與系統(tǒng)的傳輸速率相結(jié)合,這能保證存儲(chǔ)層使用量在可控的范圍內(nèi)波動(dòng),并在數(shù)據(jù)高速增長(zhǎng)的情況下延緩了遷移堵塞,也就可以使用遷移上下限來提高存儲(chǔ)層的使用率。本文為遷移時(shí)間的設(shè)定提供了理論方法,但在具體應(yīng)用中仍然需要考慮文件價(jià)值、遷移策略等其它因素才能實(shí)現(xiàn)數(shù)據(jù)的合理遷移。
核心關(guān)注:拓步ERP系統(tǒng)平臺(tái)是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:分層存儲(chǔ)中數(shù)據(jù)遷移時(shí)間的設(shè)計(jì)
本文網(wǎng)址:http://www.ezxoed.cn/html/support/11121510373.html