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

一種面向RAID陣列的SSD設計優化方法

2014-08-03 00:53:00何晚輝
計算機工程與科學 2014年7期
關鍵詞:信息

陳 博,肖 儂,劉 芳,歐 洋,何晚輝

(國防科學技術大學高性能計算國家重點實驗室,湖南 長沙 410073)

1 引言

隨著大數據時代的到來,目前NAND Flash已經不僅局限于嵌入式領域,基于NAND Flash的SSD(Solid State Disk)已經在大型數據中心得到廣泛應用。越來越多的公司開始涉足SSD市場,不僅一些老牌磁盤廠商,例如希捷、西部數據,開始生產SSD,華為公司也宣布其第一款PCIe SSD ES3000正式上市。然而,隨著NAND Flash單片容量的不斷增大,SSD的容量也不斷增加,源科公司的Kylin III MAX的單盤容量達到4.6 TB。

相比機械磁盤,基于NAND Flash的SSD具有諸多優勢,例如低延遲、無噪聲、抗震動等[1],但是SSD還沒有替代機械磁盤,一個很大的原因是SSD的價格遠高于機械磁盤。為了降低MYM/GB的價格,相繼出現MLC和TLC。但是,相比SLC的105的擦寫次數,MLC和TLC的擦寫次數急劇下降,僅有104和103[2,3],并且數據的錯誤率也會增加[4]。

為了保證數據的可靠性,傳統的方法是采用ECC校驗,在數據寫入Flash的每一頁時,相應的校驗信息寫入頁的Spare Area。但是,基于海明碼的ECC校驗僅能檢測兩位錯,糾正一位錯;而基于RS和BCH及LDPC的ECC校驗能糾正多位錯,但是硬件實現復雜,并且增加了數據訪問的延遲[5]。

另外一種保證數據可靠性的方法是采用RAID技術。RAID技術可以用在SSD與SSD之間,SSD內部的Flash芯片與芯片之間,提供不同層次的可靠性。當前的一些PCIe SSD產品中已經使用RAID技術來保證數據的可靠性。例如,Violin Memory的閃存系統采用了ECC和獨有的RAID技術保證數據的可靠性,在有Flash芯片出現故障時不會造成數據的丟失,華為的ES3000也采用了Dynamic RAID技術保證數據的可靠性。但是, Skyera公司指出,使用最為廣泛的RAID5技術在用于SSD陣列時,會縮短SSD壽命。這是因為每一次更新數據,都需要更新相應的校驗信息,使得校驗信息更新比較頻繁,從而產生較多的無效頁,增加SSD的擦除次數,降低了整個SSD的性能且縮短了壽命。

針對這個問題,本文提出了校驗信息感知的SSD控制器,稱為PA-SSD(Parity-Aware SSD)控制器。傳統的RAID5控制器向SSD控制器發送數據請求和校驗請求時,在SSD控制器看來都是數據請求,從而SSD控制器不能針對校驗信息做專門的處理。本文稍微修改RAID5控制器,使其在向SSD控制器發送校驗請求時,同時發送一個校驗標志,表示該請求是校驗請求。在SSD控制器層設置一個校驗緩存Pcache,更新校驗信息時,SSD控制器接收到校驗標志后,將校驗信息緩存在Pcache中;讀取校驗信息時,先在Pcache中查找該校驗,如果命中,則將校驗信息返回給RAID5控制器;否則,向SSD發送讀請求,這樣就減少了對SSD的讀寫操作。在將Pcache中的校驗信息寫回SSD時,寫入專門的一片空間。與數據相比,校驗信息相當于熱數據,將熱點數據單獨存放可以減少整體的擦除次數,從而提高SSD的性能和壽命。實驗表明,PA-SSD控制器能夠將SSD的壽命提升28%。

2 相關工作

Im S等人[5]提出了一種Delayed Partial Parity Update的RAID策略來構造高性能高可靠性的SSD,在每次更新數據時,計算當前新數據的校驗信息,并將校驗信息緩存在RAID控制器的Cache中,在下次更新數據時,利用Cache中存在的校驗信息再一次更新校驗信息,這樣多次更新數據只需要更新一次校驗信息,但在Cache中保存的是部分校驗信息。這種延遲更新校驗信息的方法減少了校驗信息更新的開銷,但是這種策略是在RAID控制器層工作,不能利用SSD控制器針對校驗信息的特點做優化。

Lee Y等人[6]提出FRA(Flash-aware Redundancy Array)方法,將寫數據和寫校驗兩部分分開,當寫請求到達時,先將要寫入的數據寫入SSD,在系統空閑時再將校驗寫入SSD。這種方法將校驗信息和數據信息一起存放,頻繁地更新校驗信息使得塊中無效頁的數量增加很快,進而觸發垃圾回收,影響系統的性能。

杜溢墨等人[7]提出MuLe-RAID(Multiple Level RAID)技術,將RAID控制器分成兩層,即上層的RAID5控制器和下層的RAID0控制器,這種方法減輕了上層RAID5控制器的負載,提高了整個系統的性能,但是沒有解決校驗信息的更新對系統的影響。

3 PA-SSD控制器

傳統的SSD控制器不能感知校驗信息,因此不能針對校驗信息的特點做出相應的優化,只能在其訪問頻繁時,當做普通的熱點數據處理。當前針對基于SSD的RAID系統的校驗信息的優化都是在RAID控制器層或者文件系統層,沒有在SSD控制器層次做優化的。而在RAID控制器層對校驗信息處理時,RAID控制器不知道底層SSD的數據布局。針對這一問題,我們提出PA-SSD控制器設計。

3.1 體系結構設計

PA-SSD控制器的體系結構圖如圖1所示。與傳統的RAID5控制器和SSD控制器不同的是,RAID5控制器將校驗信息請求發送給SSD控制器的同時,發送校驗標志信號,通知SSD控制器該請求是校驗信息。此外,在SSD控制器內部增加一個緩存Pcache,將更新的校驗信息暫存在Pcache中,以減少對SSD的寫次數。同時,在SSD內將存儲區間分為數據區和校驗區,分別存放數據和校驗。

Figure 1 PA-SSD controller architecture圖1 PA-SSD控制器體系結構圖

下面是PA-SSD控制器的訪問流程偽代碼:

//lpn:請求的邏輯地址

//ppn:lpn對應的物理地址

/request:RAID5控制器發出的請求

//parity_flag:RAID5控制器發出的校驗標志

RAID5控制器發送request和parity_flay

if(request==parity_request)

if(request==read)

parity=find(lpn,pache);

if(parity不為空)

將parity返回給RAID5控制器

else

ppn=map_table[lpn];

ssd_read(ppn);

endif

else

write_pcache(parity);

endif

else

if(request==read)

ppn=map_table[lpn];

ssd_read(ppn);

else

ppn=alloc(lpn);

write_ssd(ppn,data);

endif

endif

RAID5控制器發出請求和校驗標志,PA-SSD控制器根據校驗標志判斷請求類型。如果是數據請求,則根據地址映射表訪問SSD,如果是校驗請求,則判斷讀寫類型,如果是寫請求,則寫入Pcache中,如果是讀請求,則根據邏輯地址在Pcache中查找校驗信息是否存在,如果存在,則將校驗信息返回RAID5控制器,如果不存在,則根據地址映射表訪問SSD。

3.2 Pcache管理和地址分配

根據程序的局部性原理,一個被訪問的地址在將來一段時間內可能被再次訪問,在一段時間內,程序的訪問空間集中在某一片區域。因此,在更新某一個地址的數據后,在將來一段時間內,該地址以及它周圍的地址的數據可能被再次更新,如此,校驗信息的更新將會很頻繁。如果不加處理,每次更新校驗信息都對SSD執行寫操作,同時將舊的校驗信息置為無效,則SSD中會有許多無效頁,進而觸發垃圾回收操作。為了減少校驗信息的更新對SSD的寫操作,在SSD內部設置Pcache存放更新的校驗信息。更新校驗信息時,如果在Pcache中存在該校驗信息,則直接覆蓋舊的校驗信息,這樣就減少了校驗信息的更新對SSD的寫次數。

由于Pcache中保存的是最近一段時間內使用的校驗信息,根據程序的局部性原理,最久未被使用的校驗信息可能在將來也不會被使用,因此Pcache的替換策略采用LRU方式。

校驗信息需要被頻繁地更新,與數據相比,校驗信息相當于熱點數據。如果將校驗信息與數據共同存放,則頻繁更新校驗數據會使得數據塊中無效頁的數量快速增加,在垃圾回收時需要擦除較多的數據塊,并且移動大量的有效數據頁,增加了垃圾回收的負擔。將數據和校驗信息分開存放,則校驗信息的頻繁更新不會影響到數據塊,數據塊的垃圾回收次數減少,校驗塊的垃圾回收移動的有效頁數量減少,減輕了垃圾回收的負擔。

PA-SSD控制器將SSD的地址空間分為數據區和校驗區,由圖1中的地址分配單元負責數據和校驗的地址分配。寫數據請求到達時,地址分配單元在數據區分配一個空閑頁給該請求,同時將地址映射表中與該邏輯地址對應的物理地址賦值。寫校驗信息時,控制器不給校驗信息分配物理地址,而是將校驗信息先寫入Pcache中。當Pcache需要替換時,地址分配單元給替換出的校驗信息在校驗區分配一個空閑頁。

校驗區存放的校驗信息雖然由于Pcache的存在減少了校驗信息寫入SSD的次數,但是由于校驗信息的更新比數據的更新更加頻繁,所以與數據區的塊相比,校驗區中塊的擦除次數更多,因此校驗區的塊更加容易磨損。針對這種情況,我們在控制器中維護兩個塊地址鏈表,一個是校驗區塊地址鏈表,另一個是數據區塊地址鏈表。對每個塊記錄擦除次數,當校驗區的塊擦除次數超過一定閾值時,就與數據區中干凈的擦除次數最少的塊做交換,以此來延長整個SSD的壽命。

Pcache使用RAM實現,為了防止掉電時Pcache中的校驗信息丟失,造成數據的不可靠,在SSD陣列上增加一塊電池或者電容,在檢測到掉電時,由電池或者電容向Pcache供電,將其中的校驗信息寫入SSD中。

4 實驗評估

為了評估PA-SSD控制器的性能,我們實現了支持校驗標志傳送的RAID5模擬器和包含PA-SSD控制器的SSD模擬器,分別用來模擬RAID5的功能和對SSD的操作,記錄SSD運行的結果,并與傳統的RAID5模擬器和SSD模擬器的運行結果相比較。

我們使用四個真實的磁盤IO trace作為測試用例,分別是prxy、usr、Exchange和Financial,這四個trace都是服務器trace,prxy和usr是Microsoft Research Cambridge在服務器上搜集的數據[8],是典型的企業數據中心的數據;Exchange是從Microsoft Exchange Server上搜集的數據[8],包含61 000 000條請求,其中43%的請求是讀請求;Financial是一個OLTP應用程序trace[9]。

我們比較了普通SSD控制器(regular SSD)和PA-SSD控制器的性能和壽命。普通SSD控制器沒有從RAID5控制器接收校驗信息標志,沒有使用Cache緩存校驗信息,也沒有在SSD內部將校驗信息集中存放。Parity-aware SSD控制器使用不同大小的Cache測試其容量對性能的影響,Cache容量分別為SSD總容量的0.5/1000、1/1000、2/1000和4/1000。

圖2表示regular SSD和Cache為不同大小的PA-SSD執行各個trace的擦除次數,以regular SSD的擦除次數為1。從圖2中可以看出,PA-SSD相比regular SSD減少了擦除次數,在不同Cache大小的情況下,擦除次數平均減少23%~28%,最高可減少40%。在PA-SSD中,Cache越大,校驗信息在Cache中命中的幾率越高,從而寫回SSD的校驗信息越少,因此SSD的擦除次數越少。減少了SSD的擦除次數,SSD的壽命就得到了提高。

Figure 2 Comparision of erase count(normalized to regular SSD)圖2 擦除次數比較(歸一化到regular SSD)

圖3表示regular SSD和Cache為不同大小的PA-SSD的垃圾回收時移動的頁數,以regular SSD的頁移動次數為1。從圖3中可以看出,四個trace在PA-SSD下的頁移動次數相比regular SSD都有所減少,平均減少19%~27%,最高可減少37%。由圖2可知,在PA-SSD控制器中,擦除次數減少,結合圖2所示結果, PA-SSD控制器相比regular SSD控制器,在性能上有所提升。

Figure 3 Comparision of page move count(normalized to regular SSD)圖3 頁移動次數比較(歸一化到regular SSD)

綜合圖2和圖3的測試結果, PA-SSD控制器在減少擦除次數和降低垃圾回收時的頁移動次數方面都有很好的表現,在Cache容量為SSD總容量的4/1000的情況下,擦除次數平均減少28%,頁移動次數平均降低27%。因此,相比普通的SSD控制器,采用PA-SSD控制器的RAID5系統,延長了SSD的使用壽命,提升了整體的性能。

5 結束語

本文針對基于SSD的RAID5系統中校驗信息更新頻繁的特點,提出了PA-SSD控制器。RAID5控制器向SSD控制器發送請求的同時發送校驗標志,使得SSD控制器可以識別校驗信息。在SSD控制器內部實現一個緩存Pcache,用于緩存更新的校驗信息,并且在將校驗信息寫入SSD時,與數據分開存放。這種方法有效地減少了校驗信息對SSD的寫操作,減少了SSD的擦除次數,提高了系統的性能,且其開銷僅增加了一個小容量Cache。

[1] Gupta A, Kim Y, Urgaonkar B. DFTL:A flash translation layer employing demand-based selective caching of page-level address mappings[C]∥Proc of ASPLOS, 2009:229-240.

[2] You Byoung-sung,Park Jin-su,Lee Sang-don,et al. A high performance co-design of 26 nm 64 Gb MLC NAND flash memory using the dedicated NAND flash controller[J]. Journal of Semiconductor Technology and Science, 2011, 11(2):121-129.

[3] Goldman M, Pangal K, Naso G, et al. 25nm 64Gb 130mm23bpc NAND flash memory[C]∥Proc of the 3rd IEEE International Memory Workshop, 2011:1-4.

[4] Grupp L M, Davis J D, Swanson S. The bleak future of NAND flash memory[C]∥Proc of FAST’12,2012:2.

[5] Im S, Shin D. Flash-aware RAID techniques for dependable and high-performance flash memory SSD[J]. IEEE Transactions on Computers, 2011, 60(1):80-92.

[6] Lee Y, Jung S, Song Y Ho. FRA:A flash-aware redundancy array of flash storage devices[C]∥Proc of CODES+ISSS’09, 2009:163-172.

[7] Du Yi-mo, Xiao Nong, Liu Fang, et al. MuLe-RAID:Constructing large scale and high-performance SSD with multiple level RAID architecture[J]. Journal of Computer Research and Development, 2012,49(z1):111-117.(in Chinese)

[8] Narayanan D,Thereska E,Donnelly A,et al.Migrating server storage to SSDs:Analysis of tradeoffs[C]∥Proc of EuroSys’09, 2009:145-158.

[9] Laboratory for Advanced System Software. UMass Trace Repository[EB/OL].[2009-10-16].http://www.traces.cs.umass.edu/.

附中文參考文獻:

[7] 杜溢墨,肖儂,劉芳,等. MuLe-RAID:面向大容量高性能SSD的層次化RAID[J].計算機研究與發展,2012,49(z1):111-117.

猜你喜歡
信息
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
信息超市
大眾創業(2009年10期)2009-10-08 04:52:00
展會信息
展會信息
展會信息
展會信息
展會信息
信息
建筑創作(2001年3期)2001-08-22 18:48:14
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 国内精品自在自线视频香蕉| 乱人伦中文视频在线观看免费| 亚洲成a人片| 午夜国产精品视频| 日本欧美成人免费| 日韩AV无码一区| 国产色偷丝袜婷婷无码麻豆制服| 亚洲中文无码av永久伊人| 中文纯内无码H| 深夜福利视频一区二区| 国产97视频在线观看| 青青青伊人色综合久久| 精品成人免费自拍视频| 一区二区理伦视频| 一本二本三本不卡无码| 尤物亚洲最大AV无码网站| 波多野结衣在线se| 波多野结衣一级毛片| 亚洲中文字幕国产av| 青草91视频免费观看| 国产后式a一视频| 国产成人亚洲综合a∨婷婷| 亚洲中文字幕97久久精品少妇| 亚洲国产综合自在线另类| 99视频在线免费观看| 国产成人亚洲毛片| 色婷婷成人| 日韩在线观看网站| 亚洲天堂视频在线免费观看| 在线不卡免费视频| 青青草原国产免费av观看| 欧美成人免费一区在线播放| 被公侵犯人妻少妇一区二区三区| 无码AV动漫| 好吊妞欧美视频免费| 国产亚洲精| 免费啪啪网址| 国产精品任我爽爆在线播放6080 | 18禁影院亚洲专区| 亚洲女同一区二区| 一本大道香蕉中文日本不卡高清二区 | 精品人妻AV区| 一边摸一边做爽的视频17国产| 国禁国产you女视频网站| 国产正在播放| 欧美啪啪网| 亚洲最猛黑人xxxx黑人猛交| 久久亚洲中文字幕精品一区| 亚洲无码视频一区二区三区 | 色亚洲成人| 蜜桃臀无码内射一区二区三区| 第一区免费在线观看| 欧美色视频在线| 亚洲免费黄色网| 成人国产精品网站在线看| 亚洲国产精品成人久久综合影院| 久久精品丝袜| 九九久久精品国产av片囯产区| 青青操视频在线| 秋霞午夜国产精品成人片| 国产三级精品三级在线观看| 国产精品护士| www精品久久| 免费国产不卡午夜福在线观看| 欧美性久久久久| 国产欧美精品一区aⅴ影院| 亚洲福利视频一区二区| 大学生久久香蕉国产线观看| 国产超碰一区二区三区| 欧美日韩北条麻妃一区二区| 亚洲第一色视频| 四虎综合网| 国产剧情国内精品原创| 欧美亚洲第一页| 久久女人网| av一区二区三区高清久久| 亚洲—日韩aV在线| 国产啪在线91| 永久天堂网Av| 综合久久五月天| a色毛片免费视频| 播五月综合|