文件測試工具的設(shè)計與實現(xiàn)_第1頁
文件測試工具的設(shè)計與實現(xiàn)_第2頁
文件測試工具的設(shè)計與實現(xiàn)_第3頁
文件測試工具的設(shè)計與實現(xiàn)_第4頁
文件測試工具的設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

付費下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

文件測試工具的設(shè)計與實現(xiàn)

1爆炸式增長趨勢隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,不同類型的數(shù)據(jù)呈現(xiàn)快速增長趨勢。美國南加州大學(xué)的希伯特和洛佩斯估計,全球計算機(jī)儲存容量每18個月就提高一倍2系統(tǒng)數(shù)據(jù)使用特性目前,人們針對存儲文件系統(tǒng)提出多種測試工具,主要有IOZone、PostMake、IOmeter等。IOZonePostmarkIOMeter通過以上分析可以看到,現(xiàn)有的測試存儲文件系統(tǒng)工具對于特定的應(yīng)用程序具有較好實用價值,能夠描述存儲文件系統(tǒng)的部分使用情況,如I/O讀寫速率、吞吐量、CPU使用情況等。但受限于測試工具設(shè)計,這些工具使用場景具有很大局限性,對存儲文件系統(tǒng)測試往往只能關(guān)注文件系統(tǒng)的幾個方面?,F(xiàn)有的文件系統(tǒng)測試工具不能準(zhǔn)確、全面反映文件系統(tǒng)的整體狀況。人們對于應(yīng)該測試存儲文件系統(tǒng)哪些方面、哪些技術(shù)指標(biāo)并不明確。測試人員往往使用現(xiàn)成的工具測量,工具提供什么測試內(nèi)容就只能測試什么內(nèi)容,造成測試的盲目性和測試結(jié)果的片面性。為解決以上問題,本文提出一種多維度測試存儲文件系統(tǒng)的指標(biāo)體系,從多個角度探索影響文件系統(tǒng)的因素,全面呈現(xiàn)存儲系統(tǒng)的各項技術(shù)指標(biāo),為評測和優(yōu)化存儲系統(tǒng)提供有力支撐。這里介紹自主開發(fā)的專用測試工具,并對BWFS文件系統(tǒng)和CAPFS文件系統(tǒng)進(jìn)行實地測試,全面呈現(xiàn)2種文件系統(tǒng)的性能狀況,揭示存儲文件系統(tǒng)性能變化規(guī)律。3存儲網(wǎng)絡(luò)系統(tǒng)的評估系統(tǒng)本節(jié)主要介紹存儲文件系統(tǒng)的評價體系,定義描述存儲系統(tǒng)的各項指標(biāo)。3.1存儲采用元數(shù)據(jù)服務(wù)器典型的存儲系統(tǒng)架構(gòu)如圖1所示。存儲系統(tǒng)通常由3個部分組成:存儲服務(wù)器,存儲文件系統(tǒng)和后端存儲設(shè)備,各部分通過存儲網(wǎng)絡(luò)(如IB網(wǎng)絡(luò)、FC網(wǎng)絡(luò)等)連接起來傳遞數(shù)據(jù)。對圖1的說明如下:(1)存儲服務(wù)器是存儲系統(tǒng)對外的窗口,對外提供存儲服務(wù),外部應(yīng)用程序通過存儲服務(wù)器獲得存儲資源,而后端存儲系統(tǒng)結(jié)構(gòu)對外界應(yīng)用程序透明。(2)存儲文件系統(tǒng)一般由元數(shù)據(jù)服務(wù)器和客戶端組成。從結(jié)構(gòu)上講,存儲服務(wù)器屬于存儲文件系統(tǒng)客戶端。元數(shù)據(jù)服務(wù)器構(gòu)造并管理描述文件系統(tǒng)中每個文件分布的視圖,為存儲服務(wù)器存儲數(shù)據(jù)提供映射信息。(3)后端存儲設(shè)備是存儲系統(tǒng)的存儲實體,是文件的實際存儲媒介。比較常見的存儲設(shè)備有iSCSI磁盤、SCSI磁盤、SAS磁盤、磁帶庫等。通常將這些存儲設(shè)備組成高端磁盤陣列,實現(xiàn)高可靠、高并發(fā)的存儲服務(wù)。異構(gòu)的存儲設(shè)備經(jīng)過存儲控制器或者存儲文件系統(tǒng)虛擬化處理以邏輯卷形式分配給存儲服務(wù)器使用。對于存儲文件系統(tǒng)的測試就是要測試存儲系統(tǒng)存儲數(shù)據(jù)的能力,測試各個部件協(xié)調(diào)工作能力。對存儲文件系統(tǒng)進(jìn)行測試首先要搭建好如圖1所示的存儲系統(tǒng)評測結(jié)構(gòu)。在測試終端和各存儲服務(wù)器上安裝好相應(yīng)的測試工具。測試終端用于發(fā)送測試命令(指定具體測試參數(shù))給存儲服務(wù)器并接收、處理返回測試結(jié)果。安裝在存儲服務(wù)器相應(yīng)測試工具的守護(hù)進(jìn)程用于接收并執(zhí)行測試終端發(fā)送的測試命令,并實時向測試終端返回測試結(jié)果。測試工具的守護(hù)進(jìn)程是測試的實際執(zhí)行者。測試存儲文件系統(tǒng)具體流程是:(1)發(fā)送測試命令。測試終端根據(jù)測試用例的要求,發(fā)送包含具體參數(shù)測試命令給各個存儲服務(wù)器。(4)數(shù)據(jù)存取服務(wù)。存儲服務(wù)器根據(jù)獲得的元數(shù)據(jù)信息(包含文件映射信息)與后端存儲設(shè)備間直接進(jìn)行存取操作。(5)返回測試結(jié)果。存儲服務(wù)器上的守護(hù)進(jìn)程實時收集存儲系統(tǒng)性能信息并返回給測試終端,測試終端將從各個存儲服務(wù)器獲得的測試數(shù)據(jù)進(jìn)行整合處理,得到存儲文件系統(tǒng)測試結(jié)果。3.2關(guān)鍵指標(biāo)測試為全面、準(zhǔn)確地描述存儲文件系統(tǒng)的性能,筆者制定了測試存儲文件系統(tǒng)的指標(biāo)體系。存儲文件系統(tǒng)的指標(biāo)體系主要由6項具體指標(biāo)組成,如表1所示。(1)訪問接口性能。該指標(biāo)主要測試的是應(yīng)用程序可見的元數(shù)據(jù)和數(shù)據(jù)API返回速度,可以為評價使用該文件操作API集合的應(yīng)用程序設(shè)計者提供性能評價的依據(jù)。而測試的文件系統(tǒng)的API應(yīng)該滿足POSIX(可移植操作系統(tǒng)接口)標(biāo)準(zhǔn)以使測試結(jié)果具有通用性。此項測試指標(biāo)體現(xiàn)了存儲文件系統(tǒng)響應(yīng)存儲服務(wù)快慢,測試將得到一組API操作的執(zhí)行速率量綱為“操作數(shù)/s”。(2)數(shù)據(jù)讀寫性能。本項測試主要測試的是應(yīng)用程序可見的I/O數(shù)據(jù)讀/寫傳輸率,以及其與文件大小、塊大小的相互關(guān)系。對配置被測系統(tǒng)存儲參數(shù)、優(yōu)化存儲系統(tǒng)讀寫性能提供依據(jù)。(3)聚合帶寬(AggregateBandwidth,AB)。聚合帶寬是指網(wǎng)絡(luò)存儲系統(tǒng)中所有節(jié)點瞬時提供的總帶寬之和,是對外部應(yīng)用系統(tǒng)可見的數(shù)據(jù)傳輸率。該指標(biāo)量綱為“GB/s”。此處定義的聚合帶寬僅包含應(yīng)用程序收發(fā)的實際文件讀寫數(shù)據(jù)量,不包含元數(shù)據(jù)和網(wǎng)絡(luò)傳輸中含有數(shù)據(jù)包包頭和各種控制信息。為獲得最大聚合帶寬,待測系統(tǒng)的配置可以進(jìn)行優(yōu)化。例如,優(yōu)化配置文件緩存策略、磁盤陣列的RAID策略等。使用大文件的讀寫,降低元數(shù)據(jù)讀寫的開銷,保證測試達(dá)到的最大聚合帶寬更好的反映出系統(tǒng)的實際最大吞吐率。(4)最大并發(fā)數(shù)。并發(fā)訪問數(shù)是指同時連接到核心系統(tǒng)的并發(fā)任務(wù)數(shù)(線程或進(jìn)程)。主要反映的是存儲系統(tǒng)能夠同時對多少個客戶應(yīng)用任務(wù)提供存儲服務(wù)。最大并發(fā)訪問數(shù)是系統(tǒng)所能承受的最多并發(fā)客戶任務(wù)的數(shù)量。當(dāng)一個系統(tǒng)的I/O操作的平均響應(yīng)時間超過可接受的范圍,此時并發(fā)訪問量達(dá)到最大值。(5)元數(shù)據(jù)吞吐率(MetaDataThroughout,MDT)。元數(shù)據(jù)吞吐率是指存儲系統(tǒng)對元數(shù)據(jù)的處理速率。它是用來衡量存儲系統(tǒng)對文件或目錄操作的支持能力,通常以文件或目錄的創(chuàng)建、修改、讀取和刪除等操作速率來評價,其衡量單位定義為元數(shù)據(jù)I/O操作數(shù)/s。最大元數(shù)據(jù)吞吐率指各種元數(shù)據(jù)操作吞吐率之和的加權(quán)平均最大值。測試元數(shù)據(jù)吞吐率只測試文件、目錄的創(chuàng)建、刪除、修改、遍歷等與元數(shù)據(jù)有關(guān)的操作,不對文件內(nèi)容讀寫進(jìn)行測試。(6)可擴(kuò)展性測試主要用于衡量存儲系統(tǒng)性能隨資源增長而提高的程度。以上是本文所設(shè)計的存儲文件系統(tǒng)指標(biāo)體系,它從存儲系統(tǒng)不同側(cè)面進(jìn)行描述,如存儲服務(wù)響應(yīng)時間、數(shù)據(jù)傳輸速率、并發(fā)連接數(shù)等,對這些指標(biāo)測量能夠比較全面反映文件系統(tǒng)提供存儲服務(wù)的能力。4fspoly設(shè)計為完成對存儲文件系統(tǒng)的各項指標(biāo)的測試,在對現(xiàn)有存儲文件系統(tǒng)工具了解后,本文開發(fā)LZpack和FsPoly測試工具。對于這2個工具內(nèi)部實現(xiàn)介紹不是本文重點,這里只介紹它們實現(xiàn)特點及主要工作流程。LZpack在測試進(jìn)行中,總控節(jié)點從負(fù)載生成節(jié)點實時收取測試結(jié)果進(jìn)行統(tǒng)計,待一項測試結(jié)束后輸出集群測試結(jié)果。從節(jié)點數(shù)量可以動態(tài)調(diào)整以滿足對存儲文件系統(tǒng)的負(fù)載壓力。LZpack提供了一個不同節(jié)點之間多個進(jìn)程并發(fā)協(xié)同工作的框架,簡易實用。FsPoly用于并行測試文件系統(tǒng)的聚合帶寬、并發(fā)連接數(shù)等性能指標(biāo)。圖3描述了FsPoly的設(shè)計結(jié)構(gòu)。FSPoly基于客戶端/服務(wù)器結(jié)構(gòu),分為總控端與測試端??偪囟擞蓡蝹€控制節(jié)點構(gòu)成;測試端由單個或多個發(fā)起實際負(fù)載的節(jié)點構(gòu)成??偪毓?jié)點上運行總控程序負(fù)責(zé)向測試端各個節(jié)點發(fā)送控制命令、存取規(guī)則,控制整個測試進(jìn)程;測試端各個節(jié)點都將運行一個“管家進(jìn)程”,此進(jìn)程負(fù)責(zé)接收總控端命令,發(fā)送負(fù)載,并將結(jié)果傳回總控端。5系統(tǒng)測試測試根據(jù)本文設(shè)計的存儲文件系統(tǒng)的指標(biāo)體系,使用LZpack、FsPoly等測試工具對中國科學(xué)院BWFS文件系統(tǒng)和華中科技大學(xué)的CAPFS文件系統(tǒng)進(jìn)行實地測試。5.1系統(tǒng)性能測試(1)訪問接口性能使用LZpack對存儲文件系統(tǒng)的訪問接口測量,設(shè)置測試參數(shù):文件大小1GB,讀寫數(shù)據(jù)塊大小4MB,客戶端數(shù)為10。分3次獨立測試求平均值??梢钥闯?文件系統(tǒng)各個API速率差別較大,這主要跟API操作性質(zhì)有關(guān)。元數(shù)據(jù)操作(如opendir等)速率低于數(shù)據(jù)操作(putc等)速率。(2)數(shù)據(jù)讀寫性能設(shè)置測試參數(shù):文件大小為1GB,讀寫數(shù)據(jù)塊大小為4MB,客戶端數(shù)為10。圖4顯示了不同數(shù)據(jù)操作類型的數(shù)據(jù)讀寫性能,容易發(fā)現(xiàn),re-writers操作性能最高,這由于追加寫操作需要相關(guān)操作較少的緣故。而randomreaders性能較差,諸多因素(如尋到延遲、緩存大小)影響這種情況下的性能。(3)聚合帶寬測試聚合帶寬使用文件大小4GB,每個客戶端的進(jìn)程數(shù)42,客戶端數(shù)40,MDS數(shù)5。如圖5所示,存儲系統(tǒng)聚合帶寬隨讀寫塊大小有明顯變化,在數(shù)據(jù)塊大小為4MB~16MB時,變化趨勢很小,在數(shù)據(jù)塊為16MB時,出現(xiàn)下降趨勢,可以得到存儲系統(tǒng)聚合帶寬在這個范圍內(nèi)達(dá)到最大值為60GB/s。(4)最大并發(fā)數(shù)測試并發(fā)數(shù)的測試參數(shù)是文件大小128MB,每個客戶端的進(jìn)程數(shù)500,客戶端數(shù)40。如圖6所示,文件系統(tǒng)的并發(fā)連接數(shù)在數(shù)據(jù)讀寫塊影響下有較大影響,數(shù)據(jù)塊過大會導(dǎo)致并發(fā)數(shù)急劇下降,原因是存儲系統(tǒng)緩存和存儲系統(tǒng)帶寬限制。在讀寫數(shù)據(jù)塊為1MB時,存儲系統(tǒng)并發(fā)連接數(shù)可以達(dá)到8000以上。(5)元數(shù)據(jù)服務(wù)的最大吞吐率元數(shù)據(jù)吞吐率反映的是元數(shù)據(jù)服務(wù)器處理元數(shù)據(jù)信息的能力,使用LZpack,設(shè)置的測試文件大小1GB,讀寫數(shù)據(jù)塊大小4MB,客戶端數(shù)10。對于不同元數(shù)據(jù)操作,吞吐率均達(dá)到20000操作數(shù)/s以上,如圖7所示。(6)可擴(kuò)展能力對于可擴(kuò)展性測試,分為對元數(shù)據(jù)服務(wù)器MDS擴(kuò)展和客戶端數(shù)量擴(kuò)展。對元數(shù)據(jù)服務(wù)器擴(kuò)展,設(shè)置的測試參數(shù)是客戶端數(shù)8,總進(jìn)程數(shù)18,MDS數(shù)從1增加到5。如圖8所示,元數(shù)據(jù)吞吐率隨MDS數(shù)量增長而增長,但增長率有變緩趨勢,這是由于客戶端產(chǎn)生負(fù)載有限,繼續(xù)增加元數(shù)據(jù)服務(wù)器數(shù)量對元數(shù)據(jù)吞吐率影響降低。對客戶端數(shù)量擴(kuò)展,設(shè)置的測試參數(shù)是文件大小4GB,每個客戶端的進(jìn)程數(shù)42,讀寫塊大小為8MB,順序讀,MDS為5臺,其中數(shù)據(jù)服務(wù)器的個數(shù)從5臺增加到40臺為止。從圖9可以看出,存儲系統(tǒng)聚合帶寬隨著客戶端數(shù)量增長而明顯增長。比較CAPFS文件系統(tǒng)和BWFS文件系統(tǒng)的測試結(jié)果,2種文件系統(tǒng)在某些方面遵循相似的規(guī)律,如對于元數(shù)據(jù)訪問接口性能明顯低于數(shù)據(jù)訪問接口性能。2種文件系統(tǒng)元數(shù)據(jù)服務(wù)器和存儲服務(wù)器都具備可擴(kuò)展能力,聚合帶寬都能達(dá)到60GB/s。BWFS和CAPFS在數(shù)據(jù)讀寫性能方面存在較大差異,CAPFS文件系統(tǒng)讀性能優(yōu)于寫性能,而BWFS卻與之相反,這與BWFS測試參數(shù)有關(guān),BWFS客戶端數(shù)量過小沒有發(fā)揮系統(tǒng)最佳性能。BWFS文件系統(tǒng)并發(fā)數(shù)高于CAPFS文件系統(tǒng)的測量結(jié)果,主要因為BWFS文件系統(tǒng)測試文件小于CAPFS文件系統(tǒng)的測試文件大小。6存儲系統(tǒng)的存儲參數(shù)說明本文提出一種多維度存儲文件系統(tǒng)指標(biāo)體系,以全面描述存儲文件系統(tǒng)使用狀況,介紹2種測試存儲文件系統(tǒng)指標(biāo)的工具LZpack和FsPoly,并對BWFS文件系統(tǒng)和CAPFS文件系統(tǒng)進(jìn)行測試,簡要分析影響存儲文件系統(tǒng)的因素。今后將擴(kuò)展測試系統(tǒng)的規(guī)模,探索在更大規(guī)模下存儲文件系統(tǒng)的性能變化規(guī)律。(2)文件訪問請求。存儲服務(wù)器上的守護(hù)進(jìn)程接收并解析測試終端發(fā)來的測試命令,存儲服務(wù)器向存儲文件系統(tǒng)請求文件存儲服務(wù),啟動測試。(3)元數(shù)據(jù)信息處理。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論