Algoritmy RAID boli predstavené verejnosti už v roku 1987. Dnes sú stále najvyhľadávanejšou technológiou na ochranu a zrýchlenie prístupu k dátam v oblasti ukladania informácií. No vek IT technológie, ktorá prekonala 30 rokov, je skôr starobou než zrelosťou. Dôvodom je pokrok, nezadržateľne prinášajúci nové možnosti. V časoch, keď prakticky neexistovali iné úložné zariadenia než HDD, algoritmy RAID umožnili najefektívnejšie využiť dostupné úložné zdroje. Avšak s príchodom SSD sa situácia radikálne zmenila. Dnes je RAID pri práci s pevným stavom už „uzdami“ na ich výkonnosti. Preto na úplné odhalenie potenciálu rýchlostných charakteristík SSD je nevyhnutný úplne iný prístup k práci s nimi.

Okrem zjavného rozdielu medzi HDD a SSD v princípe fungovania majú tieto typy nosičov aj ďalšiu dôležitú vlastnosť: každý pevný disk môže prepisovať akékoľvek dáta s granularitou jedného bloku (čo je v súčasnosti najčastejšie 4KB). Pre SSD je však proces prepisovania omnoho zložitejší:
- Zmenené dáta sa kopírujú na nové miesto. Pri tom je granularita rovnaký blok, ale zložený z viacerých strán a má veľkosť 256KB – 4MB. T.j. pri zmene týchto 4KB sa musí skopírovať aj všetky susedné stránky, ktoré vytvárajú jednotný blok.
- „Staré“ bloky sa označia ako nepoužité, aby sa potom mohli zmazať zberateľom „odpadu“ (Garbage Collector).

Sekvenčné zapisovanie/prepisovanie na SSD
V prípade sekvenčného zapisovania/prepisovania táto vlastnosť fungovania SSD nehrá veľkú rolu z hľadiska jeho výkonu, keďže bloky sú umiestnené blízko seba a zberateľ „odpadu“ si vo svojej práci v pozadí celkom dobre poradí. Avšak v reálnom živote, najmä v segmente Enterprise, sa pre SSD najčastejšie používa náhodný prístup k dátam. A tieto dáta sú zapisované na náhodné miesta na úložiskách.
Čím viac údajov sa zapisuje na SSD, tým ťažšie pracuje zberač "odpadu", pretože sa výrazne zvyšuje fragmentácia. V dôsledku toho nastáva moment, keď proces čistenia úložiska prestáva byť "pozadím": výkon SSD sa výrazne znižuje, pretože značnú časť výkonu preberá Garbage Collector.

Skutočné umiestnenie údajov na SSD pri každodennom používaní
Na ilustráciu efektu vplyvu práce zberača "odpadu" v závislosti od režimu zápisu na úložisko je možné vykonať najjednoduchšie testy: sekvenčný a náhodný zápis blokami 4KB na 100GB úložisko. (Zdrojem je spoločnosť )

Výkon pri sekvenčnom zápise

Výkon pri náhodnom zápise
Ako je vidieť z testov, pokles výkonu môže dosiahnuť viac ako dvojnásobok. A to je len jediný disk. V prípade použitia SSD v zostave RAID skupiny sa počet operácií prepisu výrazne zvyšuje vďaka práci s paritou.
Vo všeobecnosti, vďaka týmto vlastnostiam práce SSD existuje pre ne taký parameter, ako je koeficient zápisu (write amplification). Toto je pomer objemu údajov, ktoré boli zapísané na úložisko, k objemu údajov, ktoré skutočne odoslal hostiteľ. A pre najpopulárnejší RAID5 je tento koeficient približne 3,5.
V dôsledku toho systémy s klasickým RAID v svojej podstate využívajú SSD len približne 10 % z ich skutočnej rýchlosti a zle škálujú výkon pri zvyšovaní počtu úložísk na viac ako desať.
Taktiež si všimnite, že nadbytočné zápisové operácie nielenže znižujú výkon SSD, ale aj zmenšujú jeho rozhodne nie nekonečný zdroj, čím skracujú životnosť úložiska.
, ktorá je jadrom všetkých produktov AccelStor, bola vyvinutá ako alternatíva k klasickým algoritmom RAID pri práci so SSD. Inovatívnosť technológie bola ocenená rôznymi patentmi a oceneniami (vrátane Flash Memory Summit 2016) a výsledkami nezávislých testov (napríklad SPC1).
Podstata spočíva v transformácii všetkých prichádzajúcich zápisových požiadaviek, najmä typu random, do súboru blokov, čo najviac podobnému režimu sekvenčného zápisu z pohľadu úložiska. Výsledkom je, že zápis na SSD sa vykonáva v maximálne komfortnom režime pre ne a celkový výkon prekonáva akékoľvek systémy s klasickým RAID.
Všetky SSD v systémoch AccelStor sú rozdelené na dve symetrické skupiny FlexiRemap®. Veľkosť skupiny závisí od modelu a pohybuje sa medzi 5-11 úložiskami. Pre odolnosť voči poruchám sa v rámci skupiny používa parita podobná RAID5. Obe skupiny sa používajú spoločne, vytvárajúc spoločný úložný priestor. Preto bude konečná odolnosť voči poruchám podobná poľa RAID50, ktoré pozostáva z dvoch skupín: systém dokáže zvládnuť poruchu až dvoch SSD, ale nie viac ako jedného v každej skupine FlexiRemap®.

Všetky prichádzajúce zápisové požiadavky sú rozdelené na bloky s veľkosťou 4KB, ktoré sú v režime round robin zapisované na obe skupiny FlexiRemap®. Pri tom systém neustále sleduje dopyt po zapísaných blokoch, snažiac sa pri ich zmene zapisovať podobné bloky čo najbližšie k sebe. Vzniká virtuálny ekvivalent tieringu, akoby sme to vyjadrili v termínoch SÚS. V tomto prípade sa značne uľahčuje práca zberateľa „odpadu“: pretože nepoužívané bloky budú neustále blízko seba.
Stojí za zmienku, že na rozdiel od produktov konkurencie nevyužívajú funkciu cachovania prichádzajúcich požiadaviek v operačnej pamäti ovládača. Všetky prichádzajúce bloky údajov sú okamžite zapisované na SSD. Hostiteľ dostáva potvrdenie o úspešnom zápise iba po fyzickom umiestnení údajov na úložiskách. V RAM sú uložené iba tabuľky umiestnenia blokov na SSD na urýchlenie prístupu a určenie, kam zapísať ďalší blok údajov. Samozrejme, na zabezpečenie spoľahlivosti sú kópie týchto tabuliek umiestnené aj na samotných nosičoch. V dôsledku toho systémy AccelStor nepotrebujú žiadnu ochranu cache vo forme batérie/kondenzátora (jednoducho je k dispozícii možnosť pripojiť UPS – na „jemné“ vypnutie v prípade problémov s napájaním).
Vďaka tomuto prístupu k organizácii zápisu je „odpadkový“ zberač skutočne schopný pracovať na pozadí, bez toho, aby výrazne ovplyvnil rýchlosť úložných zariadení, čo v konečnom dôsledku umožňuje v rámci systému recyklovať až 90% výkonu SSD. Práve v tom spočíva vysoká výkonnosť IOPS v systémoch AccelStor v porovnaní s All Flash, ktoré majú ako základ algoritmy RAID.
Ďalšou dôležitou vlastnosťou technológie FlexiRemap® je výrazné zníženie nadbytočných zápisových operácií na SSD. Tak pomer zápisu (write amplification) pre systémy AccelStor je len 1.3, čo v preklade na bežný jazyk znamená predĺženie životnosti úložných zariadení viac ako 2.5-krát v porovnaní s RAID5!

Vďaka neustálemu kontroly zo strany systému nad politikou umiestnenia dát na SSD, všetky úložné zariadenia sa opotrebúvajú rovnomerne. Tento prístup umožňuje predpovedať ich životnosť a vopred zaslať signál správcovi o vyčerpaní zápisového zdroja.
Je jasné, že SSD sa môžu poškodiť. V takom prípade systém okamžite začne obnovenie na jeden z diskov hot spare. Pri tom skupina FlexiRemap®, ktorá sa nachádza v stave degraded, prechádza do režimu „iba na čítanie“, a všetky požiadavky na zápis sa smerujú na druhú skupinu. Takýto mechanizmus ochrany je navrhnutý na urýchlenie operácie obnovenia a zníženie pravdepodobnosti poškodenia ďalšieho úložného zariadenia v rámci tej istej skupiny. Veď nie je tajomstvom, že počas obnovenia všetky úložné zariadenia v skupine zažívajú zvýšenú záťaž kvôli interferenciám operácií čítania, zápisu a obnovy na hot spare. Tým sa zvyšuje pravdepodobnosť zlyhania ďalšieho disku. A čím viac operácií zápisu, tým dlhšie bude trvať obnova.

Po dokončení procesu obnovy a návrate skupiny FlexiRemap® do normálneho stavu vznikne malá nerovnosť v zápisovom zdroji medzi dvoma skupinami. Preto na vyrovnanie tohto rozdielu budú nasledujúce zápisové operácie častejšie smerovať na obnovenú skupinu (samozrejme, s takým zohľadnením, aby celkový výkon systému nebyť príliš poškodený).
Zvýšiť výkon systémov All Flash založených na algoritmoch RAID nad niektoré hodnoty (~280K IOPS@4K náhodný zápis) nie je možné ani pri použití zložitých cachingových systémov. Technológia FlexiRemap®, vďaka úplne inému prístupu k organizácii úložného priestoru, nielenže s ľahkosťou prekonáva túto prekážku, ale zároveň niekoľkonásobne predlžuje životnosť SSD. Takže systémy majú vážne výhody medzi All Flash poľami na mnohých frontoch (IOPS/$, GB/$, TCO, ROI), čím sa stávajú ideálnymi kandidátmi na kľúčové pozície v dátových centrách zákazníkov na riešenie náročných úloh.
Zdroj: habr.com
