Zanesljivost bliskovnega pomnilnika: pričakovano in nepričakovano. 1. del. XIV konferenca društva USENIX. Tehnologije za shranjevanje datotek

Ker pogoni SSD, ki temeljijo na tehnologiji pomnilnika flash, postajajo glavno sredstvo za trajno shranjevanje v podatkovnih centrih, je pomembno razumeti, kako zanesljivi so. Do danes je bilo izvedenih veliko število laboratorijskih študij bliskovnih pomnilniških čipov s pomočjo sintetičnih testov, vendar je premalo informacij o njihovem obnašanju na terenu. Ta članek temelji na rezultatih obsežne terenske študije, ki zajema milijone dni uporabe trdega diska, 10 različnih modelov SSD, različne tehnologije bliskovnega pomnilnika (MLC, eMLC, SLC) in več kot 6 let operativne uporabe v Googlovih podatkih. centrih.

Zanesljivost bliskovnega pomnilnika: pričakovano in nepričakovano. 1. del. XIV konferenca društva USENIX. Tehnologije za shranjevanje datotek

Preučili smo širok spekter zanesljivosti teh naprav in prišli do številnih nepričakovanih ugotovitev. Na primer, ko se pogon obrabi, Raw Bit Error Rate (RBER) narašča veliko počasneje, kot bi predlagala eksponentna stopnja, in kar je še pomembneje, ne predvideva pojava nepopravljivih napak ali drugih vrst napak.

Široko uporabljena metrika UBER (Uncorrectable Bit Error Rate) ni pomemben pokazatelj zanesljivosti, saj nismo opazili povezave med številom branj in številom nepopravljivih napak. Prav tako nismo našli nobenih dokazov, da so pogoni, ki temeljijo na enonivojski SLC arhitekturi, zanesljivejši od pogonov MLC v običajni življenjski dobi SSD. V primerjavi s tradicionalnimi trdimi diski imajo diski SSD, ki temeljijo na bliskovnem disku, bistveno nižjo stopnjo zamenjave, vendar imajo višjo stopnjo nepopravljivih napak.

1. Uvod

Priljubljenost uporabe polprevodniških bliskovnih pogonov, ki temeljijo na tehnologiji NAND, v podatkovnih centrih nenehno narašča. Več podatkov kot je mogoče postaviti na takšen disk, bolj sta varnost in razpoložljivost informacij odvisna od zanesljivosti samega bliskovnega pogona. Medtem ko so prednosti zmogljivosti pogonov SSD v primerjavi s trdimi diski dobro znane, značilnosti napak bliskovnih pogonov niso dobro razumljene.

Podatki, ki jih zagotavljajo proizvajalci bliskovnega pomnilnika, zagotavljajo le nejasna jamstva, kot je število ciklov brisanja, preden se naprava popolnoma izrabi. Tipično razumevanje vprašanja temelji na študijah, ki preučujejo zanesljivost bliskovnih pogonov z nadzorovanimi laboratorijskimi poskusi (na primer pospešeno testiranje vzdržljivosti). Za testiranje sintetičnih delovnih obremenitev uporablja majhno število naključno izbranih naprav. Ni raziskav, ki bi povezovale rezultate laboratorijskih testov z zanesljivostjo bliskovnih pogonov v resnični uporabi.

Ta članek podaja podrobne rezultate terenske študije o zanesljivosti bliskovnih pogonov, ki temelji na podatkih, zbranih v 6 letih njihovega delovanja v Googlovih podatkovnih centrih. Ti podatki zajemajo milijone dni uporabe pogonov (natančno število pogonov in naprav, ki jih uporabljajo, so Googlovi zaupni podatki, zato ne moremo navesti natančnih številk. Vendar smo lahko preverili statistično pomembnost podatkov, ki so nam bili posredovani), deset različni modeli flash diskov, različne flash -tehnologije (MLC, eMLC in SLC) s tehnologijo čipov od 24 do 50 nm.

Te podatke smo uporabili za boljše razumevanje zanesljivosti delovanja bliskovnega pomnilnika. Zlasti smo analizirali naslednje vidike zanesljivosti naprave:

  1. Različne vrste napak, ki se pojavljajo v flash pomnilniku in pogostost njihovega pojavljanja na terenu (poglavje 3).
  2. Stopnja bitnih napak (RBER), kako nanjo vplivajo dejavniki, kot so obraba, starost pogona in delovna obremenitev, ter kako je RBER povezana z drugimi vrstami napak (razdelek 4).
  3. Nepopravljive napake, njihova pogostost in vpliv različnih dejavnikov nanje (poglavje 5).
  4. Terenske značilnosti različnih vrst okvar strojne opreme, vključno s kompleksnimi okvarami, okvarami čipov ter stopnjami popravil in zamenjav diska (razdelek 6).
  5. 5. Primerjava zanesljivosti različnih flash tehnologij (pogoni MLC, eMLC, SLC) (7. poglavje) in primerjava zanesljivosti SSD in HDD (8. poglavje).

Preverili smo, da naša analiza razkriva številne vidike zanesljivosti bliskovnega pomnilnika na tem področju, ki se razlikujejo od ugotovitev prejšnjega dela. Upamo, da bo naše delo spodbuda za nadaljnje raziskave na tem področju.

Zanesljivost bliskovnega pomnilnika: pričakovano in nepričakovano. 1. del. XIV konferenca društva USENIX. Tehnologije za shranjevanje datotek
Tabela 1. Značilnosti modulov, ki so sodelovali pri terenskih preizkusih.

2. Osnovne informacije o podatkih in sistemih

2.1. Flash pogoni

Naša študija je vključevala gotove visoko zmogljive pogone SSD, ki so temeljili na komercialno proizvedenih bliskovnih čipih, vendar smo uporabili vmesnik PCIe po meri, vdelano programsko opremo in gonilnik po meri. Osredotočili smo se na 2 generaciji pogonov, kjer vsi pogoni iste generacije uporabljajo isti gonilnik naprave in isto strojno programsko opremo. To pomeni, da uporabljajo tudi iste kode za popravljanje napak (ECC) za odkrivanje in popravljanje slabih bitov in enake algoritme za zaznavanje obrabe. Glavna razlika med modeli pogonov iste generacije je vrsta uporabljenega pomnilniškega čipa.

Naša študija se je osredotočila na 10 modelov pogonov, katerih glavne značilnosti so prikazane v tabeli 1. Izbrali smo modele štirih proizvajalcev, od katerih je vsak imel več milijonov dni delovanja, z uporabo treh najpogostejših tipov bliskovnega pomnilnika (MLC, SLC, eMLC).

2.2. Uporabljeni podatki

Uporabili smo podatke dnevnega spremljanja flash diskov na terenu v 6-letnem obdobju delovanja. Poleg tega so bile dnevno preštete različne vrste napak, sestavljena je bila statistika o delovni obremenitvi, vključno s številom pisanja in brisanja, ter izračunano število slabih blokov, ki so se pojavili čez dan. Število operacij branja, pisanja in brisanja je vključevalo tako število uporabniških operacij kot število internih servisnih operacij za »pobiranje smeti«. Zabeležili smo tudi primere okvar čipov, pa tudi primere popravil ali zamenjav SSD.

3. Razširjenost različnih vrst napak

Začnimo z nekaj osnovnimi statističnimi podatki o pojavnosti različnih vrst napak na terenu. Ločimo transparentne napake, ki jih uporabnik ne opazi, in neprozorne napake, ki povzročijo neuspešne uporabniške operacije. Gonilnik bliskovnega pogona poroča o naslednjih vrstah preglednih napak:

Popravljiva napaka: Med postopkom branja se zaznana napaka popravi z vgrajeno funkcijo za odpravljanje napak ECC.

  • Napaka pri branju: napaka, ki se pojavi med procesom branja (za pomnilnik brez popravka napak brez ECC), popravljena ob ponovnem branju;
  • Napaka pri pisanju: operacija pisanja ni uspela in je po ponovnem poskusu uspela.
  • Napaka pri brisanju: operacija brisanja na bloku ne uspe.

Naprave poročajo tudi o naslednjih vrstah nepreglednih napak:

  • Nepopravljiva napaka: med operacijo se pojavi več poškodovanih bitov, kot jih lahko ECC popravi.
  • Končna napaka pri branju: napaka, do katere pride med branjem, ni popravljena s ponovljenimi poskusi;
  • Napaka pri končnem pisanju: napaka, ki je nastala med pisanjem, ni popravljena po večkratnih poskusih;
  • Meta napaka Meta napaka: napaka pri dostopu do notranjih metapodatkov diska.
  • Napaka časovne omejitve: Operacija se prekine po 3 sekundah.

Nepopravljive napake vključujejo napake, ki so bile odkrite med operacijami, ki jih je sprožil uporabnik, ali operacijami notranjega zbiranja smeti, medtem ko napake pri končnem branju vključujejo napake, do katerih je prišlo med uporabniškimi operacijami.

Upoštevajte, da se napake razlikujejo glede na resnost vpliva. Poleg razlike med prosojnimi in neprozornimi napakami se razlikuje tudi resnost samih neprozornih napak. Zlasti nekatere od teh napak (usodna napaka pri branju, nepopravljiva napaka, meta napaka) povzročijo izgubo podatkov, če sistem nima redundance na višjih ravneh, ker disk uporabniku ne more zagotoviti podatkov, sprejetih za shranjevanje.

Pregledali smo samo pogone, ki so bili izdani pred vsaj 4 leti (pogoni eMLC so bili izdani pred 3 leti, saj so novejša vrsta bliskovnih pogonov) in napake, ki so se pojavile v prvih 4 letih uporabe. Tabela 2 prikazuje delež vsakega modela pogona, ki je bil dovzeten za različne vrste napak, če so se te napake pojavile vsaj enkrat (zgornja polovica tabele), in delež dni v uporabi, med katerimi so bili pogoni dovzetni za določeno vrsto napaka (spodnja polovica tabele).

Zanesljivost bliskovnega pomnilnika: pričakovano in nepričakovano. 1. del. XIV konferenca društva USENIX. Tehnologije za shranjevanje datotek
Tabela 2. Razširjenost različnih vrst napak. Zgornja polovica tabele prikazuje delež diskov, na katere so vplivale napake, spodnja polovica prikazuje delež dni, v katerih so bili diski uporabljeni, v katerih so se pojavile različne vrste napak.

3.1. Neprozorne napake

Menimo, da so najpogostejše neprozorne napake končne napake pri branju, torej napake, ki jih ni mogoče popraviti s ponavljanjem operacije branja. Odvisno od modela pogona se je pri vsaj 20–63 % naprav ta napaka pojavila v 2–6 dneh od 1000 dni uporabe diska.

Ugotavljamo, da je število napak pri končnem branju močno povezano s številom napak, ki jih ni mogoče popraviti, in da do teh napak pri končnem branju pride izključno zato, ker poškodbe bitov ni mogoče popraviti z ECC. Pri vseh modelih diskov se končne napake pri branju pojavljajo 2 reda velikosti pogosteje (glede na število dni, ko so bili diski v uporabi, ko so se pojavile te napake) kot katera koli druga vrsta neprozorne napake.

Za razliko od napak pri branju se napake pri pisanju redko spremenijo v neprozorne napake. Odvisno od modela je samo 1,5-2,5 % diskov imelo trajno napako pri pisanju v 1-4 dneh od 10000 dni uporabe, tj. neuspešna operacija pisanja, ki ni bila popravljena po večkratnih poskusih. Ta razlika v končni stopnji napak pri branju in pisanju je verjetno posledica dejstva, da je bila neuspešna operacija pisanja preprosto popravljena s pisanjem drugam na disk v območje z nedotaknjenimi biti. Medtem ko lahko napako pri branju povzroči samo nekaj slabih bitov, trajna napaka pri zapisovanju kaže na večjo težavo s strojno opremo.

Meta napake se pojavljajo s pogostostjo, ki je primerljiva s pisnimi napakami, vendar spet veliko manj pogosto kot končne napake pri branju. To ni presenetljivo glede na to, da disk vsebuje veliko manj metapodatkov od dejanskih podatkov, kar zmanjšuje pojavnost napak pri dostopu do metapodatkov. Druge nepregledne napake (napake časovne omejitve in napake odziva) so precej redke in običajno prizadenejo manj kot 1 % diskov v enem dnevu od 1 dni življenjske dobe diska.

3.2. Pregledne napake

Ni presenetljivo, da so popravljive napake najpogostejša vrsta preglednih napak. Skoraj vsi pogoni imajo vsaj nekaj popravljivih napak, ki se pojavijo med večino življenjske dobe pogona (61-90 %). Popravki napak, vključno s študijami stopnje bitnih napak (RBER), so podrobneje obravnavani v 4. razdelku tega članka.

Naslednje najpogostejše pregledne vrste napak so napake pri pisanju in brisanju. Običajno se pojavijo v 6-10% pogonov, vendar pri nekaterih modelih SSD dosežejo celo 40-68%. V večini primerov se takšne napake pojavijo manj kot 5 dni od 10 dni delovanja. Glede na naše raziskave napake pri pisanju in brisanju kažejo na poškodbo bloka; to vprašanje je podrobno obravnavano v razdelku 000.

Napake, ki se pojavijo med operacijami branja, so manj pogoste kot pregledne napake, verjetno zato, ker razen sprotnega odpravljanja napak z uporabo ECC težave ne odpravijo ponavljajoče se operacije. Nepopolne napake pri branju, tj. napake pri branju, ki jih je mogoče popraviti s ponovnimi poskusi, se pojavijo pri manj kot 2 % pogonov in trajajo manj kot 2–8 dni od 100000 dni življenjske dobe diska.

Posledično se poleg popravljivih napak, ki se pojavijo v velikem številu dni življenjske dobe diska, pregledne napake pojavljajo manj pogosto v primerjavi z vsemi vrstami neprozornih napak. Najpogostejša vrsta neprozornih napak so nepopravljive napake, ki se pojavijo 2-6 dni od 1000 dni življenjske dobe diska.

4. Stopnja bitnih napak (RBER)

Standardna metrika, ki se uporablja za ocenjevanje zanesljivosti bliskovnih pogonov, je stopnja bitnih napak pogona (RBER), opredeljena kot razmerje med številom slabih bitov in številom prebranih bitov (vključno s primeri popravljivih in nepopravljivih napak).

Druga generacija pogonov (modela eMLC-A in eMLC-B) zagotavlja natančno število poškodovanih in prebranih bitov, kar nam omogoča določitev RBER z visoko natančnostjo.
Prva generacija pogonov poroča o natančnem številu prebranih bitov, toda za vsako stran s 16 podatkovnimi bloki je kot število poškodovanih bitov sporočen le podatkovni blok, ki je imel največ poškodovanih bitov. Posledično je lahko v najslabšem statističnem primeru, ko vsi bloki vsebujejo napake in je število napak enako, razmerje RBER 16-krat višje od stopnje, pridobljene iz poročila o zdravju diska.

To vprašanje ni veliko, če gre za primerjavo med pogoni iste generacije, vendar ga je treba upoštevati pri primerjavi pogonov različnih generacij.

Zanesljivost bliskovnega pomnilnika: pričakovano in nepričakovano. 1. del. XIV konferenca društva USENIX. Tehnologije za shranjevanje datotek
Tabela 3. Povzetek stopnje bitnih napak RBER za različne modele SSD.

4.1. Upoštevanje RBER na visoki ravni

Tabela 3 prikazuje mediano RBER za vsak model pogona za vse pogone v tem modelu ter 95. in 99. percentil. Za delo z medianami in percentili smo se odločili, ker se nam zdi, da so povprečja zelo pristranska zaradi nekaj izstopajočih vrednosti, zaradi česar je težko prepoznati kakršne koli trende.

Vidimo velike razlike v RBER pri različnih modelih pogonov, ki segajo od 5.8e-10 do več kot 3e-08 za pogone prve generacije. Te razlike so še večje, če ne gledamo na srednjo vrednost RBER, ampak na 95. ali 99. percentil. Na primer, 99. percentil RBER se giblje od 2.2e-08 za model SLC - B do 2.7e-05 za model MLC-D. Tudi znotraj linije pogonov istega modela obstajajo velike razlike: RBER pogona pri 99. percentilu je običajno vsaj za red velikosti večji od mediane RBER pogona istega modela.

Razliko v RBER med modeli je mogoče delno pojasniti z razlikami v osnovni tehnologiji bliskavice. Vrednost RBER pri modelih MLC je višja kot pri modelih SLC, zato višja cena modelov SLC upošteva nižjo vrednost RBER. V 5. razdelku tega članka bomo videli, kako se te razlike prevedejo v razlike v nepreglednih napakah, vidnih uporabniku.
Modeli eMLC poročajo o RBER, ki so za velikostni red višji od drugih modelov pogonov. Tudi ob upoštevanju, da je RBER pogonov prve generacije v najslabšem primeru lahko 16-krat višji, je obstoječa razlika v koeficientu za red velikosti večja. Sumimo, da je tu v igri dejavnik velikosti, saj imata modela eMLC najmanjše mikroelektronske litografske čipe od vseh drugih modelov pogonov.

Nazadnje, ni niti enega proizvajalca, katerega izdelki bi imeli prednosti pred izdelki drugih proizvajalcev. Znotraj skupine pogonov SLC in eMLC isti prodajalec proizvaja enega najslabših in enega najboljših modelov v skupini.
Na splošno se RBER zelo razlikuje med različnimi modeli pogonov, pa tudi med diski SDD istega modela. To nas motivira za nadaljnje preučevanje dejavnikov, ki vplivajo na RBER.

4.2. Kateri dejavniki vplivajo na vrednost RBER

V tem razdelku si bomo ogledali vpliv številnih dejavnikov na RBER:

  • obraba zaradi ciklov programiranja/brisanja (PE);
  • fizična starost, to je število mesecev, v katerih je naprava delovala na terenu, ne glede na cikle PE;
  • delovna obremenitev, merjena s številom operacij branja, pisanja in brisanja ter številom operacij na stran, ki bi lahko poškodovale okoliške pomnilniške celice;
  • prisotnost drugih vrst napak.

Vpliv vsakega dejavnika na RBER smo preučili na dva različna načina. Uporabili smo vizualne dokaze z izrisom vpliva dejavnikov na RBER in pregledali kvantitativne kazalce vpliva s pomočjo korelacijskega koeficienta. Uporabili smo Spearmanov rang korelacijski koeficient, ker lahko zajame monotone nelinearne odnose v neparametričnih metodah, za razliko na primer od Pearsonovega korelacijskega koeficienta.

Preden smo podrobno analizirali posamezne dejavnike, smo ustvarili sumarni graf, prikazan na sliki 1.

Zanesljivost bliskovnega pomnilnika: pričakovano in nepričakovano. 1. del. XIV konferenca društva USENIX. Tehnologije za shranjevanje datotek
riž. 1. Odvisnost Spearmanovega korelacijskega koeficienta ranga med vrednostjo RBER v enem mesecu delovanja diska in drugimi dejavniki.

To prikazuje razmerje med Spearmanovim korelacijskim koeficientom ranga med vrednostjo RBER v enem mesecu življenjske dobe diska in dejavniki, kot so število prejšnjih ciklov PE, število branj, zapisov ali izbrisa v tem mesecu, vrednost RBER v prejšnjem mesecu , in število nepopravljivih napak (UE) v tem mesecu. Spearmanov rang korelacijski koeficient se lahko giblje od -1 (močna negativna korelacija) do +1 (močna pozitivna korelacija).

Vsaka skupina oznak prikazuje korelacijske koeficiente med RBER in enim specifičnim faktorjem (glejte prepis osi x), različne oznake znotraj vsake skupine pa ustrezajo različnim modelom pogonov. Vsi korelacijski koeficienti si zaslužijo več kot 95-odstotno zaupanje.

Preverili smo, da vsi dejavniki, razen pojava nepopravljivih napak v prejšnjem mesecu, kažejo jasno povezavo z RBER, vsaj za nekatere modele. Opazili smo tudi, da so lahko nekatera od teh razmerij lažna, ker so lahko nekateri dejavniki povezani med seboj, zato smo vsak dejavnik podrobneje preučili v naslednjem pododdelku.

4.2.1. RBER in obraba

Ker je vzdržljivost celice bliskovnega pomnilnika omejena, se RBER poveča z naraščajočimi cikli programiranja/brisanja (PE). Visoki korelacijski koeficienti med cikli RBER in PE na sliki 2 dokazujejo njuno razmerje.

Zanesljivost bliskovnega pomnilnika: pričakovano in nepričakovano. 1. del. XIV konferenca društva USENIX. Tehnologije za shranjevanje datotek
riž. 2. Odvisnost mediane in 95. percentila RBER od števila ciklov PE.

Slika 2 nam omogoča, da podrobneje preučimo odvisnost mediane in 95. percentila RBER od števila ciklov PE. Te ploskve smo izpeljali tako, da smo vse dneve vožnje v naših podatkih razdelili na različne vsebnike na podlagi števila njihovih ciklov PE, nato pa smo določili mediano in 95. percentil RBER v vseh dnevih delovanja v vsebniku.

Kot je bilo pričakovano, smo preverili, da se RBER povečuje z naraščajočim številom ciklov PE, tako v smislu mediane kot 95. percentila RBER. Vendar pa je stopnja rasti počasnejša od običajno domnevne eksponentne rasti in je bolj podobna linearnemu povečanju. To opazovanje smo preizkusili s prilagajanjem krivulje: podatkom smo prilagodili linearni in eksponentni model in ugotovili, da se linearni model bolje prilega kot eksponentni model.

Druga zanimiva ugotovitev je, da se RBER obrabe močno razlikujejo med različnimi modeli plošč, tudi med tistimi modeli, ki imajo zelo podobne vrednosti RBER za nizke cikle PE. Na primer, štirje modeli MLC so delovali s skoraj enakim RBER pri zelo nizkih ciklih PE, toda ko so dosegli omejitev ciklov PE (3,000 za vse modele MLC), je bila med najvišjim in najnižjim RBER modela 4-kratna razlika.

Končno smo ugotovili, da se povečanje RBER pojavi izjemno gladko, tudi ko disk prečka pričakovano mejo konca življenjske dobe (glej na primer model MLC-D z mejnim ciklom PE = 3000). Upoštevajte, da so pospešeni preskusi vzdržljivosti pokazali hitro povečanje RBER šele po doseganju 3-kratne omejitve cikla PE, ki jo je določil proizvajalec naprave, kar nakazuje, da so prodajalci zelo konzervativni pri izbiri omejitve cikla PE.

Nadaljevanje tukaj ...

Hvala, ker ste ostali z nami. So vam všeč naši članki? Želite videti več zanimivih vsebin? Podprite nas tako, da oddate naročilo ali priporočite prijateljem, 30% popust za uporabnike Habr na edinstvenem analogu začetnih strežnikov, ki smo ga izumili za vas: Vsa resnica o VPS (KVM) E5-2650 v4 (6 jeder) 10 GB DDR4 240 GB SSD 1 Gbps od 20 USD ali kako deliti strežnik? (na voljo z RAID1 in RAID10, do 24 jeder in do 40 GB DDR4).

Dell R730xd 2-krat cenejši? Samo tukaj 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6 GHz 14C 64 GB DDR4 4 x 960 GB SSD 1 Gbps 100 TV od 199 $ na Nizozemskem! Dell R420 - 2x E5-2430 2.2 Ghz 6C 128 GB DDR3 2x960 GB SSD 1 Gbps 100 TB - od 99 $! Preberite o Kako zgraditi infrastrukturo Corp. razreda z uporabo strežnikov Dell R730xd E5-2650 v4 v vrednosti 9000 evrov za drobiž?

Vir: www.habr.com

Kupite zanesljivo gostovanje za strani z DDoS zaščito, VPS VDS strežniki 🔥 Kupite zanesljivo spletno gostovanje z zaščito DDoS, VPS VDS strežniki | ProHoster