為什么NVMe SSD需要分區(qū)存儲?

EVE
NVMe ZNS規(guī)范構(gòu)建在當(dāng)前的NVMe 1.4規(guī)范之上,為NVMe2.0做準(zhǔn)備,已經(jīng)作為一項技術(shù)提案得到批準(zhǔn)和發(fā)布。即將到來的NVMe 2.0規(guī)范將包含所有獲批準(zhǔn)的技術(shù)提議,ZNS的標(biāo)準(zhǔn)化為NVMe 2.0更廣泛的商業(yè)化和應(yīng)用掃清了道路,目前NVMe 2.0一直受到特定于供應(yīng)商的分區(qū)存儲接口和有限硬件選擇的阻礙。

今年6月,NVMe標(biāo)準(zhǔn)更新定義了一個軟件接口,以幫助SSD和NAND閃存實際工作時讀寫到硬盤的方式。

區(qū)別于模仿從硬盤和早期存儲技術(shù)繼承的傳統(tǒng)塊設(shè)備模型,新的NVMe ZNS (NVMe Zoned Namespaces)可選特性允許SSD在閃存上實現(xiàn)不同的存儲抽象。這與SAS和SATA為適應(yīng)SMR硬盤而添加的擴展非常相似,還有一些為SSD做的額外擴展。帶有這個新特性的“分區(qū)”SSD可以提供比普通SSD更好的性能,同時需要的配置更加精簡,所需DRAM更少。缺點是應(yīng)用程序和操作系統(tǒng)必須更新以支持分區(qū)存儲,目前這項工作正在順利進行。

NVMe ZNS規(guī)范構(gòu)建在當(dāng)前的NVMe 1.4規(guī)范之上,為NVMe2.0做準(zhǔn)備,已經(jīng)作為一項技術(shù)提案得到批準(zhǔn)和發(fā)布。即將到來的NVMe 2.0規(guī)范將包含所有獲批準(zhǔn)的技術(shù)提議,ZNS的標(biāo)準(zhǔn)化為NVMe 2.0更廣泛的商業(yè)化和應(yīng)用掃清了道路,目前NVMe 2.0一直受到特定于供應(yīng)商的分區(qū)存儲接口和有限硬件選擇的阻礙。

分區(qū)存儲概述

使用閃存作為固態(tài)硬盤的根本挑戰(zhàn)是:我們所有的計算機都是圍繞著硬盤如何工作的概念構(gòu)建的,而閃存的行為與硬盤不同。閃存的組織方式與機械硬盤非常不同,為了提升閃存的性能,對計算機進行優(yōu)化變成一項值得投入的工作。

機械硬盤是一種類似的存儲介質(zhì),沒有固有的結(jié)構(gòu)來規(guī)定扇區(qū)大小等特性。長期選擇512字節(jié)扇區(qū)標(biāo)準(zhǔn)只是為了方便,現(xiàn)在當(dāng)我們達到多TB范圍的硬盤容量時,企業(yè)硬盤支持4K字節(jié)扇區(qū)。相比之下,閃存芯片的設(shè)計中包含了好幾層結(jié)構(gòu),最重要的指標(biāo)是頁面大小和擦除塊大小??梢允褂庙摯笮×6龋ㄍǔJ菐讉€KB)讀取數(shù)據(jù)、寫入空頁,擦除操作可以清除整個塊(多MB)。讀/程序操作和擦除操作之間的實際大小不匹配是一個普通機械硬盤不必處理的復(fù)雜問題。閃存有限的編程/擦除周期也增加了挑戰(zhàn),因為寫入次數(shù)越少,壽命就越長。

如今,幾乎所有的SSD都是作為具有512字節(jié)或4kB扇區(qū)的簡單類HDD塊存儲設(shè)備的抽象呈現(xiàn)給軟件的。這隱藏了SSD的所有復(fù)雜性,如頁面和擦除塊大小、磨損均衡和垃圾回收等。這種抽象也是SSD控制器和固件比硬盤控制器更大、更復(fù)雜(更容易出錯)的部分原因。大多數(shù)情況下,塊設(shè)備抽象仍然是最優(yōu)的折衷方法,它允許軟件無需修改就可以享受閃存的大部分性能優(yōu)勢,而對于寫入擴展等缺點也在可管理范圍內(nèi)。

多年來,存儲行業(yè)一直在探索塊存儲抽象的替代方法。有幾個關(guān)于Open Channel SSD的建議,它們將閃存的許多細(xì)節(jié)直接暴露給主機系統(tǒng),將SSD固件的許多職責(zé)轉(zhuǎn)移到運行在主機CPU上的軟件上。已經(jīng)推廣的各種Open Channel SSD標(biāo)準(zhǔn)在各個領(lǐng)域取得了不同的平衡(在具有完全驅(qū)動管理的FTL(flash translation layer)的典型SSD和完全軟件管理的解決方案之間平衡)。業(yè)界一致認(rèn)為,最早的一些標(biāo)準(zhǔn),如LightNVM 1.x規(guī)范,暴露了太多的細(xì)節(jié),需要軟件處理不同供應(yīng)商閃存之間的差異,或SLC, MLC, TLC等之間的差異。較新的標(biāo)準(zhǔn)尋求更好的平衡和抽象級別,以便更容易大規(guī)模推廣應(yīng)用,同時允許軟件繞過典型SSD的低效率特性。

為了從另一個方向解決這個問題,NVMe標(biāo)準(zhǔn)已經(jīng)獲得了一些特性,允許SSD與主機共享更多關(guān)于數(shù)據(jù)訪問和布局的最佳模式信息。在很大程度上,這些都是軟件可以利用的可選特性,沒有意識到這些特性的軟件仍然可以正常工作。NVMe規(guī)范的過去幾次修訂中添加了指令和流、NVM集、可預(yù)測的延遲模式等,以使軟件和SSD能夠更好地協(xié)作。

最近,受硬盤市場的影響,第三種方法的勢頭正在增強。SMR是一種技術(shù),部分重疊的軌道機械硬盤盤片可以增加存儲密度。這種方法的缺點是,直接修改任意字節(jié)的數(shù)據(jù)而不破壞相鄰重疊的磁道是不可能的,因此SMR硬盤將磁道分組到區(qū)域中,只允許在區(qū)域內(nèi)順序?qū)懖僮鳌_@對包括隨機寫操作的工作負(fù)載具有嚴(yán)重的性能影響,也是SMR硬盤在市場上受到褒貶不一的部分原因。然而,在服務(wù)器存儲市場中,主機管理的SMR也是一個可行的選擇:它要求操作系統(tǒng)、文件系統(tǒng)和應(yīng)用程序軟件能夠直接感知區(qū)域,但在使用環(huán)境受控時,進行必要的軟件更改并不是不可克服的挑戰(zhàn)。

用于SMR硬盤的分區(qū)存儲模型也非常適合與FLASH一起使用,它是NVMe ZNS的前身。SMR硬盤的類區(qū)域結(jié)構(gòu)反映了SSD的頁和擦除塊結(jié)構(gòu)。對寫的限制不是完全匹配的,但已經(jīng)足夠接近了。

后面我們將介紹什么是NVMe ZNS,以及它的重要性。

THEEND

最新評論(評論僅代表用戶觀點)

更多
暫無評論