SSD分類圖

遭遇SSD寫放大 讀寫性能如何優(yōu)化?

在HDD上,數(shù)據(jù)可以直接覆蓋,所以邏輯地址和物理地址是一一對(duì)應(yīng)的,不會(huì)變更。但SSD硬盤受限于Flash NAND的讀寫特性,數(shù)據(jù)不能像在機(jī)械硬盤里那樣被直接覆蓋,必須先擦除才能改寫(編程),而且數(shù)據(jù)寫入和擦除的最小單位不同;讀寫以Page (頁(yè))為單位,擦除以Block(塊)為單位,通常的Page Size(頁(yè)大小)是4KB,而擦除最小單位是Block (塊),一般包含128個(gè)Page,即512KB,使得在執(zhí)行寫入和改寫操作時(shí),需要將原有不需改寫的若干Page數(shù)據(jù)加以移動(dòng)(或重寫),以滿足擦除的最小單位Block,這些多余的對(duì)無(wú)關(guān)Page的讀寫操作增加了數(shù)據(jù)的訪問(wèn)量,即寫入放大,減少了閃存盤的使用壽命,極大地影響了閃存盤的性能。

傳統(tǒng)存儲(chǔ)系統(tǒng)的初衷往往是針對(duì)HDD設(shè)計(jì)的,那么如果直接在傳統(tǒng)磁盤陣列上配置SSD時(shí),又會(huì)造成什么樣的影響呢?當(dāng)一個(gè)Block中有1個(gè)4KB的數(shù)據(jù)更新(D1→D1’)和一個(gè)4KB的數(shù)據(jù)塊刪除(D3)時(shí),系統(tǒng)要將整個(gè)可擦除塊的數(shù)據(jù)讀到緩存,在緩存里更新整個(gè)數(shù)據(jù)塊,擦除塊,再把更新后的數(shù)據(jù)寫入新擦除過(guò)的塊。整個(gè)數(shù)據(jù)操作流程帶來(lái)的實(shí)際后果是,雖然只需要寫4K的數(shù)據(jù)、刪除4K的數(shù)據(jù),但這兩個(gè)簡(jiǎn)單的更新操作,實(shí)際卻造成了整個(gè)塊(共512KB)的讀出和寫入操作,讀寫操作一共放大了128倍,從而形成寫放大,影響SSD壽命。并且需要讀取、緩存更新、擦除、寫入4個(gè)操作步驟才能完成,造成延時(shí)大大增加,影響SSD性能。

02

寫放大影響固態(tài)存儲(chǔ)性能

數(shù)據(jù)條帶化,浪潮HF5000的創(chuàng)造性優(yōu)化

針對(duì)于SSD介質(zhì)的特性,浪潮HF5000-F存儲(chǔ)系統(tǒng)從設(shè)計(jì)之初就進(jìn)行了創(chuàng)造性的優(yōu)化,采用MASP架構(gòu)(Multi-layer Accelerated Sequential Polymeritio,多級(jí)加速順序化聚合架構(gòu)),利用日志式文件系統(tǒng),對(duì)隨機(jī)不同大小的應(yīng)用數(shù)據(jù)進(jìn)行順序化整理,轉(zhuǎn)換成一個(gè)順序的條帶,當(dāng)該條帶達(dá)到最優(yōu)尺寸(即每塊SSD寫入一個(gè)可擦除塊的512KB數(shù)據(jù)),就將數(shù)據(jù)順序、完整地寫入后端SSD盤中。

1111

 

浪潮全固態(tài)存儲(chǔ)HF5000

整個(gè)的寫入數(shù)據(jù)過(guò)程只需三步:首先,主控制器NVDIMM收到寫請(qǐng)求,與備控制器NVDIMM鏡像,完成后返回主機(jī),告知寫完成;第二步,寫數(shù)據(jù)在內(nèi)存中進(jìn)行在線重復(fù)數(shù)據(jù)刪除和快速壓縮,組成條帶;最后,每個(gè)條帶被整理成10MB,然后一次性下刷到RAID組中(RAID組中的24塊盤邏輯上可以看做20塊數(shù)據(jù)盤+3塊校驗(yàn)盤+1塊熱備盤,10MB分到每個(gè)數(shù)據(jù)盤上正好是512KB,與SSD的擦除塊大小一致,從而實(shí)現(xiàn)最大的寫入效率)。

讓我們?cè)賮?lái)與傳統(tǒng)SSD做一下對(duì)比,當(dāng)一個(gè)Block中有1個(gè)4KB的數(shù)據(jù)更新(D1→D1’)時(shí),更新的數(shù)據(jù)塊會(huì)隨著新寫入的數(shù)據(jù)進(jìn)行順序化整理,跟著整條帶在新位置追加寫入,無(wú)需額外的讀寫操作,無(wú)寫放大,不影響SSD性能和壽命。

111111MASP架構(gòu)可優(yōu)化SSD性能

MASP的優(yōu)勢(shì)

除了可以針對(duì)SSD技術(shù)優(yōu)化、降低寫入放大之外,浪潮MASP架構(gòu)還有哪些優(yōu)勢(shì)?

其一:NVDIMM日志保障數(shù)據(jù)安全

采用日志式文件系統(tǒng),寫入數(shù)據(jù)的日志信息存放在非易失NVDIMM中,保障意外掉電場(chǎng)景下的數(shù)據(jù)安全,只要有NVDIMM中的日志在,即使數(shù)據(jù)損毀了,仍然可以通過(guò)日志回滾的方式恢復(fù)數(shù)據(jù);

其二:NVDIMM加速提供更高寫性能

利用NVDIMM相比普通DDR4更高的相應(yīng)速度,為后續(xù)的數(shù)據(jù)順序化整理帶來(lái)時(shí)間,借助CPU的處理能力,提升寫性能,降低寫入延時(shí),可以保障系統(tǒng)的寫性能與讀性能一致,彌補(bǔ)由于SSD介質(zhì)本身讀寫性能的落差;

其三:在線重刪+壓縮,提高空間使用效率

在用戶數(shù)據(jù)寫入SSD存儲(chǔ)層之前,進(jìn)行在線重復(fù)數(shù)據(jù)消除操作,該過(guò)程將伴隨后續(xù)的在線數(shù)據(jù)壓縮操作,共同起到提高空間使用效率的作用。

分享到

zhangnn

相關(guān)推薦