SSD資料可靠性問題分析

2021-09-03 07:34:03 字數 2153 閱讀 4606

前幾個月對近兩年facebook和google發表的兩篇ssd故障分析的文章進行了閱讀,並進行了整理。google的在今年的fast會議上發表了《flash reliability in production: the expected and the unexpected》,在這篇文章中通過收集長達六年的資料對ssd可靠性進行了研究,並且對比了ssd與hdd之間的可靠性差別。facebook在2023年發表了《a large-scale study of flash memory failures in the field》,同樣通過大資料的方式對flash的故障進行了長時間的分析。這些研究工作實際上都在追問ssd在企業級應用的一些問題:ssd在實際的資料中心中是否可以安全部署?為了讓ssd在資料中心大規模部署,我們還需要做哪些工作?

在google的研究中對ue(uncorrectable error)進行了深入的研究分析。大家知道nand flash介質是不可靠的,經常會出現錯誤,用著用著就有可能遇到位錯誤,這是常態。尤其是15nm製程以及tlc/qlc的推廣,使得nand flash的bit error問題變得更加嚴重。ssd乙個重要的職責就是糾正這些bit error,讓不可靠的nand flash變成可靠的ssd儲存盤。

但是,儘管ssd內部具有強大的bch或者ldpc編譯碼單元,以及rain等條帶化資料保護機制,但是還是不可避免的發生ue這樣的錯誤。nand flash發生故障,可以通過ecc、rain或者firmware等手段解決,這類錯誤被稱之為correctable error,屬於transparent error的範疇,這類錯誤不會對應用產生影響。ssd內部機制無法解決的錯誤,那麼這類錯誤將會對業務產生影響,被稱之為ue,屬於non-transparent error範疇。對於ue故障,google通過連續4年的資料表明,20% (20~63%)的ssd遇到會發生ue,這種ue在業務層表現為bad sector;和磁碟對比,在32月的時間內,3.5%的傳統磁碟會遇到bad sector。這也就說明ssd在資料區域性損壞方面會遠遠高於hdd,大致對比如下:

除了觀察區域性損壞故障之外,使用者還會比較關注ssd的整盤損壞。google的研究資料告訴我們,在4年的時間內,ssd的整盤更換率為4~10%,而傳統機械磁碟的年更換率為2~9%。從這點上來看ssd的整盤故障更換率要比hdd低很多。這也表現為一旦ssd上線之後,比磁碟要具備更低的更換率,可以大大簡化系統運維。

對於具體的錯誤型別,從上圖我們可以看出,在non-transparent error這塊,絕大部分錯誤都是uncorrectable error,也就是讀操作時發現bad sector,導致資料丟失。並且在大規模部署的情況下,這種錯誤導致的影響還是非常嚴重的。

除了分析ssd盤對外表現出來的區域性以及整體故障之外,google還對ssd資料可靠性因素進行了分析,影響ssd資料可靠性的因素大致有如下幾點:

1,ssd磨損(wear out)

2,ssd技術型別(mlc、tlc)

3,製造工藝

4,使用時間(age)

5,溫度

比較有意思的是,ssd的資料可靠性與使用時間相關,而不僅是使用壽命。如果一塊盤在沒有使用的情況下長時間存放,那麼該盤的資料故障率要比一塊新盤高。如下圖所示:

對於乙個全新的舊盤,由於長時間存放之後,ssd內部nand flash所產生的出錯位數明顯增加。這也說明ssd的資料可靠性與時間相關。此外,不同的製造工藝對ssd的資料可靠性也會產生重要影響,下圖對比了不同nand型別以及不同製造工藝情況下的資料可靠性:

總體來講,從google的統計資料我們可以發現ssd的故障模型和hdd相比發生了重要變化。ssd在整盤故障方面要優於hdd;但是在區域性故障方面,ssd明顯故障率要高於hdd。因此,在大規模部署ssd的情況下,上層的應用軟體還是需要考慮ssd儲存的容錯機制,防止資料在ssd中丟失。由於ssd故障模型的變化,上層軟體的容錯機制也需要做出調整,適應ssd大量區域性故障的問題。

SSD資料可靠性問題分析

前幾個月對近兩年facebook和google發表的兩篇ssd故障分析的文章進行了閱讀,並進行了整理。google的在今年的fast會議上發表了 flash reliability in production the expected and the unexpected 在這篇文章中通過收集長達六...

SSD資料可靠性問題分析

前幾個月對近兩年facebook和google發表的兩篇ssd故障分析的文章進行了閱讀,並進行了整理。google的在今年的fast會議上發表了 flash reliability in production the expected and the unexpected 在這篇文章中通過收集長達六...

電路可靠性問題

可靠性指器件或器件的一部分不能或將不能在特定時間內實現特定功能的事件或狀態,往往跟產品本身和外部環境有密切關係。隨著vlsi工藝持續的縮減,工藝引數波動的日益增加,越來越普遍的缺陷給在奈米級的vlsi設計帶來了前所未有的挑戰,極大影響了電路的可靠性。1 出於低功耗設計的考慮,設計者更傾向於使用更低的...