當前位置: 華文世界 > 數碼

即刻全閃·第一期|華為如何讓SSD大盤壽命無憂

2024-06-28數碼

眾所周知

有數據的地方,就有儲存

有儲存的地方,就有快閃記憶體介質

隨著AIGC、大數據、數據湖

等數據分析型套用的湧現

為了容納 海量非結構化數據

分布式儲存 在全閃化演進中

逐漸擔當大任

因此

今天的SSD也是

越!做!越!大!

小小一塊企業級硬碟

目前容量已達30TB、60TB的、甚至120TB……

然而

光存得下可不夠

在分布式儲存全閃化演進中

SSD的壽命

是最常被大夥兒提起的問題,

不怕一萬,就怕萬一

越大容量的盤,出現故障後

遺失的數據就越多!

問題都看到了,那麽如何來解決呢?

別著急!【即刻全閃】這就為你安排~

本期為您揭秘,

華為全閃分布式儲存

讓SSD大盤更「長壽」的秘訣

影片載入中...

幹貨太多,筆記不好整理?

小編都為你齊刷刷準備好了~

要點1

為什麽SSD會有壽命問題?

SSD快閃記憶體實際是由半導體元件、 NAND Flash 顆粒組成。透過對盤上顆粒不斷的擦和寫,來完成對數據的增、刪、改、查。

這個過程中,顆粒捕獲電子的能力會逐漸減弱,當減弱到一定程度後、也就是超過顆粒最大擦寫次數,便可能出現「電子逃逸」現象,也就是硬碟寫穿、數據錯誤、壽命耗盡。

SSD磁碟機是一個全域、均衡的系統。因此,SSD磁碟機的壽命機制決定於: 盤上全部顆粒可支持的總擦寫次數 和 使用期間使用者寫入的數據量 。只要後者小於前者,那麽就能保證壽命無憂!

因此,下面這個公式就能一目了然:

要點2

想延長SSD壽命,就要減少「寫放大」

為了降低分母,就要減少罪魁禍首——「寫放大」。寫放大的意思是,比如,在寫入16KB的業務數據時,呈現到盤上卻變成寫入64KB物理數據量,被放大了,消耗了數倍的擦寫次數,加速顆粒老化。「寫放大」的源頭來自於以下三點:

後台垃圾回收

SSD是無法覆蓋寫的,要想修改數據必須擦除顆粒、重新寫入,Block就是擦除的最小單元。當少量數據修改時, SSD就會將原Block上的全部有效數據讀取後,寫入新的Block位置,再擦除原Block。

這個過程,就像整理房間一樣,要先把老房間的東西全部搬出來,再放到新房間裏重新布置。換句話說,少量的數據更新,會引發更大面積顆粒的擦寫。

小I/O補齊

SSD可讀寫的最小單元是Page(一般是512個byte)。在使用者層面寫入數據時,當使用者寫入的I/O大小不足一個Page容量,為了能管理它,就需要額外尋找另一份數據,來和原數據拼湊成一整個Page的大小,再寫入到顆粒中。「這個不夠、別的來湊」,這用來湊齊的無效數據,就會造成寫放大。

後設資料變化

在SSD上,後設資料是描述數據的索引,一般緊密地存放在一些Block區域。當使用者在頻繁修改數據時,對應的每份後設資料也必須跟著被修改、重新導向,造成多次讀寫、擦寫,牽一發而動全身。

懂得了病因,華為是如何治病的?

華為 OceanStor Pacific 分布式儲存采用了一個創新的機制——小I/O聚合,將小I/O在寫盤前聚合在保電記憶體中,只有達到一定粒度後才會寫入SSD,消除了小I/O補齊導致的寫放大。

這對後設資料變化也非常友好。聚合後的小I/O更容易被集中修改,極大減少後設資料被頻繁擦寫的概率。

同時,華為還采用了業界獨創的多流技術,即智能辨識數據的冷熱程度並最佳化數據布局,減少不必要的重復擦寫和數據搬移。

要點3

想延長SSD壽命,還要會糾錯

除了分母,我們也要增大分子。華為是采用額外的編碼糾錯技術,在達到顆粒的標稱擦寫次數後,對數據持續校驗或修正,徹底避免數據錯誤、業務出錯,變相地增大了顆粒的總擦寫次數。

華為開發了一套更加強大的組合拳—— LDPC(Low Density Parity Check) 演算法與 SmartFSP 3.0 演算法,一方面對Flash介質進行監測,尋找更精確的讀取電位,另一方面保證高效能的校驗糾錯效能,提供更加精準的盤內冗余糾錯精度。

一個糾得正,一個查得準,二者配合,華為就將SSD數據的誤碼率從10-17降低至10-18,整整降低一個數量級,延長30~50%的SSD壽命。

SSD壽命

是分布式儲存在全閃化的行程中

必須要回答的命題

為了讓客戶放心地把數據存在華為儲存上

華為下的功夫,也遠不止於此

更多的技術揭秘

已在路上