我主要從四個(gè)方面簡(jiǎn)單介紹,第一介紹當(dāng)前固態(tài)硬盤面臨可靠性的問題。第二現(xiàn)在固態(tài)硬盤廠商包括在搭建系統(tǒng)時(shí)測(cè)試方面面臨的挑戰(zhàn),第三介紹現(xiàn)在采用的固態(tài)硬盤預(yù)測(cè)方法,最后是總結(jié)。
固態(tài)硬盤可靠性的問題
當(dāng)前,固態(tài)硬盤可靠性實(shí)際上是現(xiàn)在固態(tài)硬盤廠商關(guān)注的重要問題,現(xiàn)在數(shù)據(jù)量急劇增長(zhǎng),隨著時(shí)間推移,特別像閃存介質(zhì)擦寫次數(shù)的增多,到磁盤故障率不斷上升?,F(xiàn)在SSD在市場(chǎng)份額中也在不斷增長(zhǎng),是數(shù)據(jù)中心里面主流的存儲(chǔ)介質(zhì)。
現(xiàn)在不管云計(jì)算還是數(shù)據(jù)中心存儲(chǔ),我們面臨著大量的硬件故障問題,特別是SSD故障問題,我們會(huì)發(fā)現(xiàn)SLC、TLC、QLC等閃存介質(zhì)里面,隨著密度的不斷增加,故障概率不斷增高,如圖所示,SLC年故障率基本上0.2%以下,MLC基本上在0.4-0.6%之間,TLC有可能會(huì)飆升到0.8%-1%左右。
我們看到了像微軟超過50萬張固態(tài)硬盤的結(jié)果,統(tǒng)計(jì)了三年之內(nèi)的年故障率,并且分析了SSD故障的內(nèi)容,包括故障產(chǎn)生的時(shí)間和原因特征,比如品牌,工作負(fù)載的一些讀寫特性、容量、寫放大問題等,我們會(huì)發(fā)現(xiàn)實(shí)際上固態(tài)硬盤的故障跟很多方面因素都有關(guān)系,左邊這個(gè)圖展示的是不同負(fù)載,每天的數(shù)據(jù)寫入量會(huì)對(duì)故障產(chǎn)生不一樣的影響。右圖是顯示不同型號(hào)故障概率也不同。
NetApp統(tǒng)計(jì)了140萬張SSD,涵蓋了三個(gè)制造商,18個(gè)型號(hào)和12種不同容量的固態(tài)硬盤,論文里揭示了故障的成因更加復(fù)雜,包括使用的老化,包括閃存類型、容量、工藝、固件以及甚至采用不同的讀方式,都會(huì)對(duì)盤片壽命產(chǎn)生很大影響以及故障。
現(xiàn)在在整個(gè)固態(tài)硬盤領(lǐng)域通用的故障預(yù)測(cè)方法是采用SMART信息,通過來自硬盤控制系統(tǒng)的信息,監(jiān)測(cè)硬盤相應(yīng)的實(shí)時(shí)數(shù)據(jù),通過機(jī)器學(xué)習(xí)的方法,采集數(shù)據(jù)中心的SMART數(shù)據(jù)做數(shù)據(jù)集進(jìn)行相應(yīng)的訓(xùn)練,故障預(yù)測(cè),這是最常見的方法。
但這些方法里有一些問題,比如第一存在大量的正負(fù)樣本不均衡的問題。我們的大量硬盤是健康硬盤,只有少量是故障硬盤。第二存在著預(yù)測(cè)的時(shí)間不及時(shí)的問題。比如預(yù)測(cè)短期內(nèi)的某一個(gè)盤片或某一個(gè)地方會(huì)產(chǎn)生故障,難度非常大。第三是存在準(zhǔn)確度不高的問題,現(xiàn)在很多方法做的精準(zhǔn)度還行,達(dá)到70-80%,提升到90%以上難度很大。
現(xiàn)在總結(jié)一下現(xiàn)在的幾個(gè)挑戰(zhàn),一個(gè)正負(fù)樣本非常不均衡,基本上是1:1000的情況。第二我們的學(xué)習(xí)特征和故障的相關(guān)性參數(shù)需要做一些提煉和提取。第三是我們需要對(duì)整體樣本做相應(yīng)的監(jiān)測(cè),并且現(xiàn)在很多故障預(yù)測(cè)的模型實(shí)際上也會(huì)隨著時(shí)間的推移,SSD不斷在使用,也在不斷老化,模型也要做相應(yīng)的更新,而不是采用一個(gè)模型去監(jiān)測(cè)SSD直到壽命的終點(diǎn),這是做不到的。
最后一個(gè),故障預(yù)測(cè)里面存在著非常高的誤報(bào)率和漏報(bào)率的問題。
我們給出了幾種現(xiàn)在比較代表性的解決方案。一個(gè)可以采用GAN——生成對(duì)抗網(wǎng)絡(luò)方式做預(yù)測(cè),減少正負(fù)樣本之間的不均衡,可以生成一些健康數(shù)據(jù),并且與我們判別的健康數(shù)據(jù)進(jìn)行對(duì)抗,實(shí)現(xiàn)我們對(duì)健康樣本的重構(gòu),減少錯(cuò)誤樣本的數(shù)量,提高準(zhǔn)確率。
第二可以采用一些遷移學(xué)習(xí)的方法,不同的盤片,不同的模型,可能預(yù)測(cè)效果是不一樣的,我們是否可以把一個(gè)數(shù)據(jù)中心的一類盤片移到另外一類數(shù)據(jù)中心上面,可以采用一些遷移學(xué)習(xí)的方法。比如我們可以為少量模型來做一個(gè)初步訓(xùn)練,并且把其他比較成熟的模型移植到里面去,從而達(dá)到比較好的效果。
第三在很多預(yù)測(cè)領(lǐng)域里實(shí)際也存在著單一模型性能低下,或某些模型某部分情況預(yù)測(cè)精度比較好,另外一部分模型預(yù)測(cè)精度比較差的問題,可以采用孿生網(wǎng)絡(luò)模型的方法,還可以解決比如有一些示范模型沒有出現(xiàn)過,故障模型精度比較低,樣本不均衡,訓(xùn)練數(shù)據(jù)比較少等問題。
現(xiàn)在除了上述方法可以部分解決問題之外,SSD還面臨著很多其他挑戰(zhàn),比如基于NAND閃存,涉及到很多半導(dǎo)體工藝和架構(gòu)的相關(guān)特性,給我們預(yù)測(cè)準(zhǔn)確度帶來非常多的不確定性。比如SSD需要維護(hù)FTL(閃存轉(zhuǎn)換層),這有可能使我們SMART日志難以全面的反映SSD本身的故障特征,并且SMART的信息量還是很少,實(shí)際上SSD里面需要有更多的特征來做一些反饋。
因此,我們也看了一些新的文章,去引進(jìn)一些新方法,提煉更多更有效的特征,多維度地輸出,比如像故障、健康、故障類型甚至壽命等等相應(yīng)的結(jié)構(gòu),從而提高精準(zhǔn)度。
固態(tài)硬盤廠商測(cè)試面臨挑戰(zhàn)
這是我們現(xiàn)在做的一些工作?,F(xiàn)在對(duì)于SSD廠商來說還面臨其他測(cè)試方面的挑戰(zhàn),比如我們需要進(jìn)行一些廠商的自我測(cè)試(MST)來消除或減少有缺陷性的組件。隨著工藝的進(jìn)步,需要做測(cè)試的數(shù)量輪次在不斷增加,來觀察SSD是否過早的存在潛在的故障。
與此同時(shí),在閃存當(dāng)中存在著非常多的壞塊,部分是我們手動(dòng)設(shè)置,部分是物理上存在,我們需要在測(cè)試當(dāng)中加一些測(cè)試,去了解固態(tài)硬盤是否能夠正常處理。
最終的問題是我們需要掃描NAND SSD閃存,直到所有的塊都被反復(fù)的擦除、編程和讀取。隨著容量增長(zhǎng),我們老化過程的時(shí)間成本,包括測(cè)試輪次基本上都會(huì)不斷增加,而且概率在不斷上升,有時(shí)候需要幾個(gè)小時(shí)甚至幾十個(gè)小時(shí)做這樣一個(gè)測(cè)試。
為了減少我們出廠前的內(nèi)測(cè)時(shí)間,增加出貨效率。一般來說就是盡可能去降低測(cè)試輪次,較大幅度減少時(shí)間開銷。左圖里面展示了不同測(cè)試輪次的開銷變化。我們和Memblaze合作做了一個(gè)類似的課題,想把測(cè)試周期從16個(gè)周期減少到4個(gè)周期,并且能保證缺陷檢測(cè)率和之前一樣,也就是做了一個(gè)固態(tài)硬盤早期故障檢測(cè)的工作,包括三個(gè)方面的測(cè)試,第一個(gè)是做IC的Test,第二個(gè)做Burn-in?Test,第三個(gè)做Board?Test,即做電路缺陷檢測(cè)和故障預(yù)測(cè)以及電路早期的故障檢測(cè)。
固態(tài)硬盤早期故障預(yù)測(cè)
其主要挑戰(zhàn)在于數(shù)據(jù)集的限制和不充分,包括有些特征可能是隱含的,難以提取。在整個(gè)晶圓上面如果選擇少量die做訓(xùn)練模型,模型有可能存在精細(xì)度比較低,泛化性比較強(qiáng)等問題。
對(duì)此,我們提出了一種在線測(cè)試方法,通過篩選高缺陷率的時(shí)候才會(huì)中斷常規(guī)計(jì)算,并選擇在線增量學(xué)習(xí)和遷移學(xué)習(xí)的方法,能夠比較準(zhǔn)確地識(shí)別類型故障。這里我們主要做了兩個(gè)工作,一個(gè)通過滑動(dòng)窗口的段連接檢測(cè)變化點(diǎn),判斷整體缺陷。另外就是判斷當(dāng)前的故障電池百分比。
與此同時(shí),為了對(duì)整體數(shù)據(jù)值進(jìn)行增強(qiáng),還在數(shù)據(jù)模型里面加入對(duì)編碼器的注意力機(jī)制,實(shí)現(xiàn)多步驟預(yù)測(cè)更加精準(zhǔn)。最后得到預(yù)測(cè)結(jié)果之后,我們會(huì)發(fā)現(xiàn)通過這些方法可以大幅降低整個(gè)SSD出廠之前測(cè)試的成本。
這是我們最終的數(shù)據(jù)增強(qiáng)效果,藍(lán)色的點(diǎn)是真實(shí)的有缺陷的點(diǎn),紅色的是我們通過人為增強(qiáng)的方式,能夠達(dá)到比較好的效果。而且我們會(huì)發(fā)現(xiàn)采用GAN的這種方式達(dá)到比較好的數(shù)據(jù)增強(qiáng)效果,右邊采用SMART算法則會(huì)有一定的缺陷。最終我們可以實(shí)現(xiàn)比較好的預(yù)測(cè)性能,像F1-Score預(yù)測(cè)精度可以達(dá)到95%左右,錯(cuò)判率可以降低到個(gè)位數(shù)——7%,時(shí)間開銷可以比傳統(tǒng)采用十幾個(gè)輪次的檢測(cè)方法低80%,相當(dāng)于效率提高4倍,并且比正常的檢測(cè)率更高。
另外我們檢測(cè)時(shí)間可以在40秒左右,即40秒可以對(duì)超過兩萬個(gè)驅(qū)動(dòng)器的數(shù)據(jù)做整體的預(yù)測(cè)。
以上是我的匯報(bào),現(xiàn)在固態(tài)硬盤故障預(yù)測(cè)面臨著很多挑戰(zhàn),今天講的內(nèi)容主要是我們?cè)诠虘B(tài)硬盤廠商測(cè)試當(dāng)中面臨的難點(diǎn),容量密度增大,使得我們需要做更多的測(cè)試輪次,從而增加了時(shí)間成本。為了解決這個(gè)問題,提出了基于GAN的網(wǎng)絡(luò),并且實(shí)現(xiàn)更好的數(shù)據(jù)模型,謝謝大家。