999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種針對混合存儲系統(tǒng)的高效緩存算法?

2020-07-13 12:48:06
計算機與數(shù)字工程 2020年5期
關(guān)鍵詞:機械系統(tǒng)

張 劍

(中國艦船研究設(shè)計中心 武漢 430064)

1 引言

隨著科技的發(fā)展,固態(tài)硬盤(Solid State Drive,SSD)[1~2]作為一種擁有高速I/O、低能耗等優(yōu)點的新型存儲介質(zhì),在存儲系統(tǒng)中得到了廣泛應用。然而,固態(tài)硬盤相對機械硬盤(Hard Disk Drive,HDD)來說有著壽命相對較短以及小寫放大等問題,考慮到數(shù)據(jù)安全要素,一般不采用完全替代機械硬盤的方式使用固態(tài)硬盤,而采用固態(tài)硬盤作為緩存來構(gòu)建混合存儲系統(tǒng),在提升性能的同時保證系統(tǒng)數(shù)據(jù)的持久安全性。

為了實現(xiàn)系統(tǒng)數(shù)據(jù)存儲的更好管理與I/O性能提升,本文針對內(nèi)存、固態(tài)硬盤、機械硬盤(實際使用中一般采用磁盤陣列)構(gòu)成的混合存儲系統(tǒng),設(shè)計了一種兼顧時間局部性和空間局部性的緩存算法ODCA(Order Distance Cache Algorithm),并在特定的架構(gòu)下進行了該算法的性能測試。測試結(jié)果表明,ODCA算法可以顯著提高混合存儲系統(tǒng)的I/O效率,并且具有較強的穩(wěn)定性。

2 相關(guān)研究

2.1 混合緩存系統(tǒng)研究

國內(nèi)外有很多采用固態(tài)硬盤作為二級緩存構(gòu)建混合存儲系統(tǒng)的研究,典型的系統(tǒng)包括SieveS?tore系統(tǒng)[3]、OP-FCL系統(tǒng)[4]。

普渡大學的Pritchett等提出了SieveStore混合存儲系統(tǒng),系統(tǒng)使用1個固態(tài)硬盤為多個機械硬盤服務器做緩存,并通過兩種不同的方案來識別服務器中的熱數(shù)據(jù):離線、離散分配方法SieveStore-D,通過寫入日志的方式精確記錄一個時間段內(nèi)每個數(shù)據(jù)塊的訪問次數(shù),當時間段結(jié)束后,在離線狀態(tài)下完成訪問次數(shù)的整合,把訪問次數(shù)超過門限的數(shù)據(jù)塊緩存到固態(tài)硬盤;在線、連續(xù)分配方法SieveS?tore-C,在一段時間內(nèi),當對某個數(shù)據(jù)塊的訪問丟失連續(xù)達到一定次數(shù)后,則將它緩存到固態(tài)硬盤。

Yongseok Oh等提出了OP-FCL(Optimal Parti?tioning flash,最佳點閃存)混合存儲系統(tǒng),系統(tǒng)使用固態(tài)硬盤作為機械硬盤的緩存,并根據(jù)系統(tǒng)的性能變化,合理劃分固態(tài)硬盤存儲空間,以達到性能最佳。該系統(tǒng)將固態(tài)硬盤存儲空間分為兩部分,一部分是數(shù)據(jù)緩存空間,用來存放數(shù)據(jù),另一部分是預分配空間,用來垃圾回收。通過適當分配兩個空間的大小,提高系統(tǒng)的性能。預分配空間增大時,數(shù)據(jù)緩存空間減小,緩存性能下降,導致系統(tǒng)性能降低,但同時數(shù)據(jù)更新開銷減小,使得系統(tǒng)性能提升,如圖1所示,最終會存在一個最優(yōu)點使系統(tǒng)性能達到最優(yōu)。

2.2 緩存算法

內(nèi)存的緩存替換算法已經(jīng)相對成熟,例如LRU[5]、LFU[6]、MQ[7]等,但由于固態(tài)硬盤具有區(qū)別于內(nèi)存的特點,于是一些針對固態(tài)硬盤的緩存算法被提出。

Seon-yeong等提出一種 CFLRU[8](Clean-First LRU)緩存算法。如圖2所示,算法將鏈表分為工作區(qū)和淘汰區(qū)兩個區(qū)域,工作區(qū)管理最近被訪問的頁,淘汰區(qū)管理即將被淘汰的頁。當發(fā)生替換操作時,算法會在淘汰區(qū)中優(yōu)先選擇干凈的頁進行淘汰,如果淘汰區(qū)不存在干凈的頁,那么就把LRU端的臟頁作為替換頁。

圖2 CFLRU緩存算法示意圖

Hoyoung Jung等基于CFLRU算法進行改進,設(shè)計了 LRU-WSR[9~10](LRU-Write Sequence Reorder?ing)算法。如圖3所示,算法將緩存頁劃分為三種類型:干凈頁,冷臟頁和熱臟頁。臟頁通過一個冷熱標識進行冷熱劃分。發(fā)生淘汰時,判別LRU端的頁類型:若為干凈頁或冷臟頁,直接淘汰;若為熱臟頁,則將標記為冷臟頁,并把該頁插入MRU端,即多給熱臟頁一次被保留的機會。

圖3LRU-WSR緩存算法示意圖

3 算法設(shè)計

為了提高緩存的命中率,針對內(nèi)存和固態(tài)硬盤兩級緩存,ODCA緩存算法設(shè)計均采用盡可能滿的方式,以確保更多的數(shù)據(jù)留在緩存中,提高系統(tǒng)性能。ODCA緩存算法對時間局部性和空間局部性均進行考慮,并結(jié)合LRU和LFU的特性,采用一個熱度值來表示數(shù)據(jù)頁的熱度。系統(tǒng)從運行時開始記錄累計有多少數(shù)據(jù)頁提取到緩存中,該值命名為S值(Sum),并對緩存中的每個數(shù)據(jù)頁記錄如下信息:

1)O值(Order):該頁最近一次被訪問時系統(tǒng)的S值。

2)D值(Distance):該頁最近一次被訪問時系統(tǒng)的S值與該頁當前O值之差,若該頁剛被提取到緩存中,則D值為無窮大。

圖4為O值及D值的一個示例,假設(shè)初始狀態(tài)(S=0)下緩存中無數(shù)據(jù),系統(tǒng)依次讀取1、2、3、4、3、1、5頁。

圖4 O值D值示意圖

顯然,對于數(shù)據(jù)頁來說,O值是反映數(shù)據(jù)最近是否被訪問的度量,數(shù)值越大,說明其越近被訪問;D值是反映數(shù)據(jù)訪問頻度的度量,數(shù)值越小,說明其越頻繁被訪問。ODCA算法將二者相結(jié)合,使用權(quán)值公式來對緩存數(shù)據(jù)的冷熱進行判斷,得出每一個數(shù)據(jù)頁的熱度值。熱度值的計算方式如式(1)所示。

其中k為系數(shù),用于調(diào)整LFU和LRU之間的權(quán)重關(guān)系;udisk表示數(shù)據(jù)頁存儲設(shè)備在系統(tǒng)中所占的權(quán)值,通過這一值的設(shè)定,可以將熱數(shù)據(jù)緩存算法和多個固態(tài)硬盤之間的負載算法相結(jié)合,負載重的固態(tài)硬盤IO帶寬較小,存儲在其上的數(shù)據(jù)頁可以擁有較低的緩存權(quán)值,從而降低設(shè)備的I/O請求數(shù)量,提高系統(tǒng)整體性能。udisk值設(shè)定如表1所示。

表1 固態(tài)硬盤權(quán)重設(shè)定表

4 性能測試與結(jié)果分析

4.1 測試系統(tǒng)架構(gòu)

測試系統(tǒng)的緩存由內(nèi)存與固態(tài)硬盤組成,內(nèi)存進行一級緩存,固態(tài)硬盤進行二級緩存??紤]到機械硬盤和固態(tài)硬盤具有不同的存儲特性,將內(nèi)存劃分成兩個區(qū)域(機械硬盤內(nèi)存區(qū)和固態(tài)硬盤內(nèi)存區(qū))分別進行管理。測試系統(tǒng)的結(jié)構(gòu)及數(shù)據(jù)流向如圖5所示。整個系統(tǒng)中數(shù)據(jù)頁的熱度值均采用ODCA算法進行計算。

圖5 測試系統(tǒng)的架構(gòu)及數(shù)據(jù)流向

機械硬盤內(nèi)存區(qū)只緩存機械硬盤中的數(shù)據(jù)。數(shù)據(jù)在機械硬盤內(nèi)存區(qū)緩存期間,若其熱度值達到了事先定義好的閾值,則將其提升至固態(tài)硬盤內(nèi)存區(qū);在機械硬盤內(nèi)存區(qū)空間不夠而發(fā)生數(shù)據(jù)淘汰時,選擇熱度值較低的數(shù)據(jù),如果其為干凈數(shù)據(jù),則直接淘汰,如果其為臟數(shù)據(jù),則將數(shù)據(jù)同步到機械硬盤后淘汰。

固態(tài)硬盤內(nèi)存區(qū)緩存固態(tài)硬盤中的數(shù)據(jù)以及從機械硬盤內(nèi)存區(qū)提升上來的數(shù)據(jù)。數(shù)據(jù)塊在固態(tài)硬盤內(nèi)存區(qū)緩存期間,完成對數(shù)據(jù)塊的冷熱區(qū)分。發(fā)生數(shù)據(jù)淘汰時,固態(tài)硬盤內(nèi)存區(qū)將小寫合并成大寫后再一次性寫入固態(tài)硬盤,減少對固態(tài)硬盤的寫操作,從而延長固態(tài)硬盤的壽命。

4.2 系統(tǒng)實現(xiàn)

系統(tǒng)實現(xiàn)基于開源的 iSCSI[11~12]代碼。iSCSI是當前存儲界最熱門的技術(shù)之一,其使用TCP/IP協(xié)議,本質(zhì)上就是用廣域網(wǎng)仿真了一個常用的高性能本地存儲總線,從而創(chuàng)建了一個存儲局域網(wǎng)。系統(tǒng)實現(xiàn)主要包含以下模塊:固態(tài)盤內(nèi)存區(qū)緩存模塊、機械硬盤內(nèi)存區(qū)緩存模塊、固態(tài)盤緩存模塊、機械硬盤內(nèi)存區(qū)數(shù)據(jù)提升模塊、機械硬盤讀寫模塊。

4.3 測試環(huán)境

iSCSI的客戶端、服務端均在Linux服務器上進行部署。具體測試環(huán)境配置如表2所示。

表2 測試環(huán)境配置

4.4 測試對象與數(shù)據(jù)集

采用blktrace工具集進行測試。blktrace是一個針對Linux內(nèi)核中塊設(shè)備I/O層的跟蹤工具。具體測試時,采用blktrace工具集中的btreply回放工具對微軟公司服務器的一周實際請求trace進行回放測試。由于真實trace時間過長,測試過程中采用64倍加速的方式進行回放測試。blktrace測試配置如表3所示,測試trace的基本情況如表4所示。

表3 blktrace測試配置

表4 測試trace基本情況

4.5 測試結(jié)果分析

4.5.1 每小時平均IOPS性能測試

每小時平均IOPS測試結(jié)果如圖6、圖7、圖8所示。

圖6 性能測試結(jié)果(rsrch,每小時平均IOPS)

圖7 性能測試結(jié)果(usr,每小時平均IOPS)

圖8 性能測試結(jié)果(web,每小時平均IOPS)

可以看出,在擁有不同I/O訪問特點的多種trace下,混合存儲系統(tǒng)在ODCA緩存算法下每小時平均IOPS大部分時間都要高于LRU及LFU緩存算法,印證了ODCA緩存算法的高命中率和穩(wěn)定性。

4.5.2 總請求IOPS性能測試

總請求IPOS測試結(jié)果如圖9、圖10、圖11、圖12所示。其中圖9、圖10、圖11表示的值為從系統(tǒng)啟動運行到每一個測試時間點(每個小時一次)的總請求IOPS;圖12表示的值為總測試時間(168h)內(nèi)的總請求IOPS。

圖9 性能測試結(jié)果(rsrch,總請求IOPS)

圖10 性能測試結(jié)果(usr,總請求IOPS)

圖11 性能測試結(jié)果(web,總請求IOPS)

圖12 性能測試結(jié)果(總測試時間內(nèi)總請求IOPS)

從圖9、圖10、圖11可以看出,系統(tǒng)運行一段時間后混合緩存系統(tǒng)在ODCA緩存算法下總請求IOPS即優(yōu)于LRU和LFU緩存算法,而且隨著時間推移這種優(yōu)勢越發(fā)明顯。從圖18可以看出,對于rsrch、usr、web三種trace,混合緩存系統(tǒng)在ODCA緩存算法下總請求IOPS分別比LRU緩存算法提高了10.89%、27.27%、20.70%,分別比LFU緩存算法I/O性能提高了1.82%、21.74%、40%。

4.5.3 測試結(jié)果分析

rsrch的I/O訪問特點是對熱數(shù)據(jù)的短時間高頻次訪問,對于這類數(shù)據(jù)訪問,ODCA算法性能高于LRU算法,與LFU算法基本相同。

web的I/O訪問特點是熱數(shù)據(jù)的訪問間隔較長,對于這類數(shù)據(jù)訪問,ODCA性能大幅度高于LRU和LFU。

綜上所述,相對于經(jīng)典的LRU和LFU緩存算法,ODCA緩存算法能更大程度提高混合緩存系統(tǒng)I/O性能,且對不同特點的I/O請求都有較好的適應性。

5 結(jié)語

隨著大數(shù)據(jù)時代的發(fā)展,人們對存儲性能的要求越來越高,固態(tài)硬盤作為一種高性能緩存介質(zhì),在各類存儲系統(tǒng)中得到越來越廣泛的應用。本文針對內(nèi)存、固態(tài)硬盤、機械硬盤構(gòu)成的混合存儲系統(tǒng),提出了一種結(jié)合LRU和LFU算法優(yōu)點、綜合考慮數(shù)據(jù)時間局部性和空間局部性的ODCA緩存算法。通過測試發(fā)現(xiàn),對于不同特點的I/O請求,ODCA緩存算法均優(yōu)于LRU和LFU算法。

猜你喜歡
機械系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
機械革命Code01
電腦報(2020年35期)2020-09-17 13:25:53
調(diào)試機械臂
當代工人(2020年8期)2020-05-25 09:07:38
基于PowerPC+FPGA顯示系統(tǒng)
ikbc R300機械鍵盤
電腦報(2019年40期)2019-09-10 07:22:44
半沸制皂系統(tǒng)(下)
簡單機械
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
主站蜘蛛池模板: 日韩黄色大片免费看| 成人免费视频一区二区三区| 亚洲精品视频免费观看| 五月天福利视频| 无码有码中文字幕| 亚洲福利网址| 制服丝袜一区| 呦女亚洲一区精品| 999国产精品永久免费视频精品久久 | 亚洲av无码牛牛影视在线二区| 亚洲欧洲综合| 99中文字幕亚洲一区二区| 亚洲黄网在线| 波多野结衣二区| 一级做a爰片久久毛片毛片| 一级一毛片a级毛片| 久久一色本道亚洲| 三上悠亚一区二区| 国产美女无遮挡免费视频| 亚洲视频影院| 国产激爽大片在线播放| 成年女人a毛片免费视频| 亚洲av无码久久无遮挡| 色综合热无码热国产| 极品av一区二区| 日韩无码视频播放| 99久久成人国产精品免费| 亚洲av综合网| 日本成人一区| 欧美精品亚洲精品日韩专区| 国产一区免费在线观看| 中字无码av在线电影| 成人国产精品网站在线看| 亚洲av无码人妻| 国产综合精品一区二区| 国产亚洲高清在线精品99| 深爱婷婷激情网| 高清不卡一区二区三区香蕉| 91精品久久久久久无码人妻| 久久人人妻人人爽人人卡片av| 国产精品极品美女自在线网站| 国产欧美精品专区一区二区| 亚洲欧美色中文字幕| 欧美一级视频免费| yy6080理论大片一级久久| 国产无码在线调教| 精品福利视频导航| 国产在线麻豆波多野结衣| 日本精品一在线观看视频| 91福利片| 超碰aⅴ人人做人人爽欧美| 亚洲天堂日韩av电影| 日韩精品成人在线| 国产自无码视频在线观看| 国产免费自拍视频| 国产成人AV大片大片在线播放 | 日韩在线播放中文字幕| 国产激情第一页| 亚洲毛片一级带毛片基地| 五月激情综合网| 亚洲男人天堂2020| 久热99这里只有精品视频6| 91成人在线免费观看| 97人妻精品专区久久久久| 91免费片| 国产亚洲现在一区二区中文| 中文字幕亚洲精品2页| 亚洲AⅤ永久无码精品毛片| 精品综合久久久久久97| 69av在线| 无码免费的亚洲视频| 欧美国产日韩在线观看| 欧美黄网站免费观看| 亚洲欧美一区二区三区麻豆| 欧美日本在线观看| 免费国产无遮挡又黄又爽| 99热国产这里只有精品9九| 国产免费一级精品视频| 欧洲高清无码在线| 99精品国产自在现线观看| 国产v精品成人免费视频71pao | 国产无码在线调教|