Velikost nájezdového pruhu, kterou si vybrat. Testování v klasických benchmarcích

Na internetu je spousta článků popisujících RAID. Například tato popisuje vše velmi podrobně. Ale jak už to tak bývá, na přečtení všeho není dost času, takže potřebujete něco krátkého, abyste pochopili - zda je to nutné nebo ne, a co je lepší použít ve vztahu k práci s DBMS (InterBase, Firebird nebo něco jiného - to opravdu je to jedno). Přesně takový materiál máte před očima.

Pro první přiblížení je RAID kombinací disků do jednoho pole. SATA, SAS, SCSI, SSD - na tom nezáleží. Navíc téměř každá normální základní deska nyní podporuje SATA RAID. Pojďme si projít seznam toho, co jsou RAIDy a proč jsou. (Rád bych hned poznamenal, že v RAID je potřeba kombinovat identické disky. Konsolidace disků z různých výrobců, ze stejných, ale různých typů, nebo různých velikostí - to je rozmazlování pro člověka sedícího u domácího počítače).

RAID 0 (proužek)

Zhruba řečeno, jedná se o sekvenční kombinaci dvou (nebo více) fyzické disky na jeden „fyzický“ disk. Hodí se pouze pro organizaci obrovských diskových prostor, například pro ty, kteří pracují se střihem videa. Nemá smysl uchovávat databáze na takových discích – ve skutečnosti, i když má vaše databáze velikost 50 gigabajtů, tak proč jste si koupili dva disky po 40 gigabajtech a ne 1 x 80 gigabajtů? Nejhorší je, že v RAID 0 jakákoliv porucha jednoho z disků vede k úplné nefunkčnosti takového RAIDu, protože data se zapisují střídavě na oba disky a podle toho RAID 0 nemá prostředky pro obnovu v případě poruch.

RAID 0 samozřejmě poskytuje rychlejší výkon díky prokládání čtení/zápisu.

RAID 0 se často používá k hostování dočasných souborů.

RAID 1 (zrcadlový)

Zrcadlení disku. Pokud Shadow v IB/FB je softwarové zrcadlení (viz Operations Guide.pdf), pak RAID 1 je hardwarové zrcadlení a nic víc. Zakažte vám používat zrcadlení softwaru pomocí nástrojů operačního systému nebo softwaru třetích stran. Potřebujete buď „železný“ RAID 1 nebo stín.

Pokud dojde k poruše, pečlivě zkontrolujte, který disk selhal. Nejčastějším případem ztráty dat na RAID 1 jsou nesprávné akce při obnově (špatný disk je označen jako „celek“).

Pokud jde o výkon - zisk pro zápis je 0, pro čtení - možná až 1,5krát, protože čtení lze provádět „paralelně“ (střídavě z různých disků). U databází je zrychlení malé, zatímco při paralelním přístupu k různým (!) částem (souborům) disku bude zrychlení naprosto přesné.

RAID 1+0

Pojmem RAID 1+0 se rozumí možnost RAID 10, kdy jsou dva RAID 1 spojeny do RAID 0. Možnost, kdy jsou dva RAID 0 spojeny do RAID 1, se nazývá RAID 0+1 a „mimo“ se jedná o stejný RAID 10 .

RAID 2-3-4

Tyto RAIDy jsou vzácné, protože používají Hammingovy kódy nebo rozdělení bajtů do bloků + kontrolní součty atd., ale obecné shrnutí je toto - tyto RAID poskytují pouze spolehlivost, s 0 nárůstem výkonu a někdy i zhoršením.

RAID 5

Vyžaduje minimálně 3 disky. Paritní data jsou distribuována na všechny disky v poli

Obvykle se říká, že „RAID5 používá nezávislý přístup k disku, takže požaduje různé disky mohou být prováděny paralelně." Je třeba mít na paměti, že se samozřejmě bavíme o paralelních I/O požadavcích. Pokud takové požadavky půjdou sekvenčně (v SuperServeru), pak samozřejmě nedosáhnete efektu paralelního přístupu na RAID 5. RAID5 samozřejmě zvýší výkon, pokud se s polem pracuje operační systém a další aplikace (bude například obsahovat virtuální paměti, TEMP atd.).

Obecně lze říci, že RAID 5 býval nejčastěji používaným diskovým polem pro práci s DBMS. Nyní lze takové pole organizovat SATA disk x a bude výrazně levnější než SCSI. Ceny a ovladače si můžete prohlédnout v článcích
Kromě toho byste měli věnovat pozornost objemu zakoupených disků - například v jednom ze zmíněných článků je RAID5 sestaven ze 4 disků s kapacitou 34 gigabajtů, zatímco objem „disku“ je 103 gigabajtů.

Testování pěti řadičů SATA RAID - http://www.thg.ru/storage/20051102/index.html.

Adaptec SATA RAID 21610SA v polích RAID 5 - http://www.ixbt.com/storage/adaptec21610raid5.shtml.

Proč je RAID 5 špatný - https://geektimes.ru/post/78311/

Pozor! Při nákupu disků pro RAID5 obvykle berou minimálně 3 disky (nejspíše kvůli ceně). Pokud náhle po čase dojde k poruše některého z disků, pak může nastat situace, kdy nebude možné zakoupit podobný disk jako používaný (již se nevyrábí, dočasně není skladem apod.). Zajímavějším nápadem se proto zdá být nákup 4 disků, uspořádání RAID5 ze tří a připojení 4. disku jako zálohy (pro zálohy, jiné soubory a další potřeby).

Objem diskové pole RAID5 se vypočítá pomocí vzorce (n-1)*hddsize, kde n je počet disků v poli a hddsize je velikost jednoho disku. Například pro pole 4 disků po 80 gigabajtech bude celkový objem 240 gigabajtů.

Nabízí se otázka „nevhodnosti“ RAID5 pro databáze. Minimálně se na to lze dívat z pohledu, že za účelem získání statku Výkon RAID 5, musíte použít specializovaný řadič, a ne výchozí na základní desce.

Článek RAID-5 musí zemřít. A více o ztrátě dat na RAID5.

Poznámka. Od 09.05.2005 náklady na SATA Disk Hitachi 80 GB je 60 dolarů.

RAID 10, 50

Dále následují kombinace uvedených možností. Například RAID 10 je RAID 0 + RAID 1. RAID 50 je RAID 5 + RAID 0.

Zajímavé je, že kombinace RAID 0+1 vychází z hlediska spolehlivosti hůře než RAID5. Služba opravy databáze má případ selhání jednoho disku v systému RAID0 (3 disky) + RAID1 (3 další stejné disky). Současně RAID1 nemohl „zvednout“ záložní disk. Ukázalo se, že základna je poškozená bez jakékoli šance na opravu.

RAID 0+1 vyžaduje 4 disky a RAID 5 vyžaduje 3. Přemýšlejte o tom.

RAID 6

Na rozdíl od RAID 5, který používá paritu k ochraně dat proti jednotlivým chybám, RAID 6 používá stejnou paritu k ochraně proti dvojitým chybám. V souladu s tím je procesor výkonnější než v RAID 5 a jsou vyžadovány ne 3, ale alespoň 5 disků (tři datové disky a 2 paritní disky). Navíc počet disků v raid6 nemá stejnou flexibilitu jako v raidu 5 a musí se rovnat jednoduchému číslu (5, 7, 11, 13 atd.)

Řekněme, že selžou dva disky současně, ale takový případ je velmi vzácný.

Neviděl jsem žádné údaje o výkonu RAID 6 (nedíval jsem se), ale může se stát, že kvůli redundantnímu ovládání může být výkon na úrovni RAID 5.

Čas přestavby

Každé pole RAID, které zůstane funkční, pokud selže jeden disk, má svůj koncept čas na obnovu. Samozřejmě, když vyměníte mrtvý disk za nový, řadič musí organizovat fungování nového disku v poli a to nějakou dobu potrvá.

Při „připojování“ nového disku, například pro RAID 5, může řadič povolit provoz pole. Rychlost pole však v tomto případě bude velmi nízká, přinejmenším proto, že i když je nový disk „lineárně“ zaplněn informacemi, zápis na něj bude „odvádět pozornost“ řadiče a hlav disku od synchronizace operací se zbytkem disku. disky pole.

Doba potřebná k obnovení normálního provozu pole přímo závisí na kapacitě disku. Například pole Sun StorEdge 3510 FC Array s velikostí pole 2 terabajty v exkluzivním režimu provede přestavbu do 4,5 hodiny (při ceně hardwaru asi 40 000 $). Proto při organizování pole a plánování obnovy po havárii musíte především myslet na čas obnovy. Pokud vaše databáze a zálohy nezabírají více než 50 gigabajtů a nárůst za rok je 1–2 gigabajty, pak má sotva smysl sestavovat pole 500 gigabajtů disků. 250 GB bude stačit a i pro raid5 to bude minimálně 500 GB prostoru pro umístění nejen databáze, ale i filmů. Ale doba přestavby u 250GB disků bude přibližně 2krát kratší než u 500GB disků.

Resumé

Ukazuje se, že nejsmysluplnější je použít buď RAID 1 nebo RAID 5. Nejvíce však běžná chyba, což téměř každý dělá, je používat RAID „na všechno“. To znamená, že nainstalují RAID, naskládají na něj vše, co mají, a... získají v nejlepším případě spolehlivost, ale žádné zlepšení výkonu.

Zápisová mezipaměť také často není povolena, v důsledku čehož je zápis na raid pomalejší než zápis na běžný jeden disk. Faktem je, že pro většinu ovladačů je tato možnost ve výchozím nastavení zakázána, protože... Má se za to, že aby to bylo možné, je žádoucí mít na raid controlleru alespoň baterii a také přítomnost UPS.

Text
Starý článek hddspeed.htmLINK (a doc_calford_1.htmLINK) ukazuje, jak můžete dosáhnout výrazného zvýšení výkonu použitím více fyzických disků, dokonce i pro IDE. Pokud tedy uspořádáte RAID, umístěte na něj základnu a zbytek (temp, OS, virtuální disk) udělejte na jiných pevných discích. Koneckonců, samotný RAID je jeden „disk“, i když je spolehlivější a rychlejší.
prohlášeno za zastaralé. Vše výše uvedené má právo existovat na RAID 5. Před takovým umístěním však musíte zjistit, jak můžete zálohovat/obnovit operační systém a jak dlouho to bude trvat, jak dlouho bude trvat obnovení „ mrtvý“ disk, zda existuje (bude) ) je po ruce disk, který nahradí „mrtvý“ a tak dále, tj. budete muset předem znát odpovědi na nejzákladnější otázky pro případ selhání systému .

Stále doporučuji ponechat operační systém na samostatném disku SATA, nebo chcete-li, na dvou discích SATA připojených v RAID 1. V každém případě umístění operačního systému na RAID musíte naplánovat své akce, pokud se základní deska náhle zastaví pracovní deska - někdy je přenos disků raid pole na jinou základní desku (čipset, raid řadič) nemožný z důvodu nekompatibility výchozích parametrů raidu.

Umístění základny, stínu a zálohy

Přes všechny výhody RAID se striktně nedoporučuje například zálohovat na stejný logický disk. Nejen, že to má špatný vliv na výkon, ale také to může vést k problémům s nedostatkem volného místa (u velkých databází) - vždyť v závislosti na datech může být záložní soubor ekvivalentní velikosti databáze , a ještě větší. Vytvoření zálohy na stejný fyzický disk je stále v pořádku, i když nejvíce nejlepší možnost- zálohování na samostatný pevný disk.

Vysvětlení je velmi jednoduché. Zálohování je čtení dat z databázového souboru a zápis do záložního souboru. Pokud se toto vše fyzicky odehrává na jednom disku (dokonce i v RAID 0 nebo RAID 1), bude výkon horší, než při čtení z jednoho disku a zápisu na jiný. Výhoda z tohoto oddělení je ještě větší, když se zálohování provádí v době, kdy uživatelé pracují s databází.

Totéž platí pro stín - nemá smysl dávat stín například na RAID 1 na stejné místo jako základna, dokonce i na jiné logické disky. Pokud je přítomen stín, server zapisuje datové stránky do databázového souboru i do stínový soubor. To znamená, že místo jedné operace zápisu se provedou dvě. Při rozdělení základny a stínu na různé fyzické disky Výkon zápisu bude určen nejpomalejším diskem.

Tento článek připravil Nikolaj Vedyashkin, odborník ze servisního střediska Jet Infosystems.

Představme si situaci: na databázový server jsme přidali novou instanci databáze nebo novou zálohovací úlohu (BK), připojili další server k diskovému poli a ve všech těchto případech jsme zjistili pokles jeho výkonu. Pak můžete jít různými způsoby.

Například přidejte databázový server a přeneste na něj instanci databáze, přidejte záložní jednotky pro urychlení ukládání dat, upgradujte procesory atd. Je však třeba připomenout, že pouhé zvýšení kapacity hardwaru je z hlediska materiálových a časových nákladů nejméně ziskové. Mnohem efektivnější je takové problémy řešit na úrovni logiky IT řešení.

Příčiny uklouznutí

Problémy s výkonem pole jsou často způsobeny tím, že počáteční konfigurace nebere v úvahu jeho architekturu, provozní principy a stávající omezení. Například Achillovou patou polí starší generace je poměrně nízká propustnost interních sběrnic – cca 200 Mb/sec. Před nedávnem nás jeden ze zákazníků požádal o analýzu výkonu jeho diskového pole a doporučení pro optimalizaci. Pole ve skutečnosti nebylo načteno a jeho rychlost pravidelně zůstávala nedostatečná. Analýza odhalila nesprávnou konfiguraci: obecně platí, že během dne byly interní disky zatěžovány přibližně stejně, ale zátěžové špičky na nich byly rozloženy nerovnoměrně. V důsledku toho došlo k přetížení jedné z interních sběrnic. To znamená, že pole „proklouzlo“ kvůli překročení maximálního přípustného prahu pro jeden komponent. Naše doporučení – přerozdělení, aby se vnitřní pneumatiky zatížily rovnoměrně – pomohlo zvýšit produktivitu o 30 %.

Chyba se také může vloudit při připojování serverů k úložným systémům. Příkladem je nesprávná konfigurace kapacity disku, která je prezentována hostitelům. Faktem je, že některá z moderních polí mají omezení na takový parametr, jako je fronta příkazů (Queue Depth, QD). Zde stojí za to jít trochu hlouběji do historie. Ve standardu SCSI-I musel ovladač serveru SCSI čekat na dokončení jednoho příkazu, než odeslal další. Od standardu SCSI-II a vyššího může ovladač SCSI posílat na disk SCSI několik příkazů (QD) současně. Maximální množství paralelně obsluhované příkazy SCSI jsou jednou z nejdůležitějších vlastností disku. Parametr IOPS (Input Output Operation per Second) ukazuje, kolik požadavků (SCSI příkazů) za sekundu je SCSI LUN schopna provést. Ukazuje se, že QD a IOPS se mohou dostat do nesmiřitelného vzájemného konfliktu.

Je docela možné, že I/O charakteristiky na straně serveru jsou nepřijatelné, doba odezvy na požadavky je velmi dlouhá a pole není načteno. Důvod spočívá v - nesprávné konfiguraci fronty příkazů (vyšší než přípustné) - příkazy visí ve vyrovnávací paměti pole, dokud na ně nepřijde řada k provedení. Velké servisní časy jsou zaznamenány na serveru.

Pokud je QD výrazně nižší než optimální hodnota, utrpí tím i výkon. S vynikající dobou odezvy a nezatíženým polem bude počet požadavků, které zpracovává, velmi malý. Důvodem je dlouhé čekání ve frontě před odesláním požadavků do úložného systému.

Chytání IOPS za ocas

Co dělat, pokud je doba odezvy mimo grafy a pole není načteno? Nebo pokud chcete jen „vymáčknout“ z pole trochu více?
Může:
  • podívejte se do nastavení Queue Depth na serveru a porovnejte maximální povolenou frontu příkazů s LUN pole. Upravit nastavení;
  • podívejte se na statistiky z pole. Možná se na něm hromadí fronta příkazů pro LUN;
  • rozdělit jednu LUN na několik a připojit ji k hostiteli v pruhu nebo alespoň ve zřetězení, v závislosti na konfiguraci. Zřetězení je užitečné, pokud je zatížení distribuováno mezi všechny logické jednotky.
  • zvolte velikost prokládané jednotky na poli a hostiteli tak, aby typická operace aplikace načetla co nejméně fyzických disků v poli.

Rýže. 1. Velikost jednotky pruhu

Příklad z naší zkušenosti: kombinace server-pole zákazníka nevykazovala deklarovanou úroveň výkonu. V důsledku analýzy se ukázalo, že server dostal velmi velký (několik terabajtů) LUN - výkon aplikací byl neuspokojivý a samotný LUN byl přetížen frontou příkazů. Doporučujeme tuto LUN rozdělit na několik a rozložit typy zátěže napříč různé objemy. Na serveru se otáčely 4 instance databází, v důsledku toho jedna z nich začala pracovat 6krát rychleji, druhá - 2krát rychleji.

Více není lepší

Zákazníci IT profesionálové ne vždy chápou, který typ RAID je pro daný profil zatížení aplikace nejvhodnější. Každý ví, že RAID 10 je spolehlivý, odolný vůči vícenásobným ztrátám na disku a ukazuje se dobrá rychlost na náhodné operace. Není divu, že tato velmi drahá možnost je nejčastěji vybírána. Pokud však profil zatížení aplikace zahrnuje několik operací náhodné nahrávání a mnoha operacích čtení nebo sekvenčního zápisu je optimální použít RAID 5. Na stejném počtu disků může pracovat 1,5x nebo i 2x rychleji. Oslovila nás společnost, abychom zlepšili výkon diskových I/O jedné z jejích aplikací. Aplikace generovala mnoho čtení a málo zápisů. Na poli byl nakonfigurován RAID 10 a ze statistik bylo zřejmé, že téměř polovina disků v RAID skupině byla nečinná. S přechodem na RAID 5 z přesně stejného počtu fyzických disků se výkon aplikace zlepšil více než 1,5krát.

Uvítáme vaše konstruktivní připomínky.

Problémy s výkonem se týkají téměř každé společnosti, která provozuje výpočetní systém. Zde uvedené příklady nejsou jediné. Mnoha problémům spojeným se špatným výkonem polí lze předejít, pokud se při konfiguraci zařízení vezme v úvahu architektura a profil zatížení aplikace. Zároveň by se zlepšování výkonu výpočetního systému nemělo omezovat na žádnou z jeho součástí – server, pole, software nebo datovou síť. Nejlepší výsledky lze dosáhnout po analýze celého komplexu jako celku a změně konfigurace nejen pole, ale i serveru a aplikací.

Nadšenci budou pravděpodobně vědět, jak tyto kroky provést, ale pro ty, kteří se s poli teprve chystají seznámit, může být takový materiál užitečný. Ať mi příznivci AMD prominou, vysvětlím na příkladu výše zmíněného stojanu Wintelidia.

Nejprve je potřeba v BIOSu přepnout provozní režim řadiče čipové sady do režimu RAID.

Pokud dojde k přepnutí po instalaci operačního systému, je to spojeno se ztrátou jeho funkčnosti a nekonečným pádem na modrou obrazovku. Chcete-li tento problém vyřešit, měli byste použít pokyny společnosti Microsoft.

Předpokládejme, že je s tím vše v pořádku. Pokud OS ještě není nainstalován, můžete vstoupit do nabídky samotného ovladače a vytvořit pole v jeho utilitě. Chcete-li to provést, musíte mít čas během načítání stisknout CTRL+I.

Pokud je možné bootovat ze samostatného disku, nejjednodušší je nainstalovat proprietární ovladače Intel a použít konzolu Rapid Storage Technology. V závislosti na dostupnosti vhodné disky K dispozici bude tlačítko „Vytvořit“.

Prvním krokem je výběr typu pole.

Poté proveďte nastavení přímo. Je možné nevytvářet RAID od začátku, ale jako základ použít jeden disk s daty. Navíc u všech polí (kromě „zrcadlení“) můžete vybrat velikost datového proužku, známou také jako velikost proužku. To určuje velikost bloků, do kterých jsou data rozdělena. Velké hodnoty jsou užitečné pro práci s velkými soubory, malé - především pro malé transakce ve stylu DBMS (ačkoli vše velmi závisí na DBMS, typu pole, typu zatížení, náladě vývojářů firmwaru ovladače a dalších funkce). Obvykle je nejlepší ponechat výchozí nastavení.

Můžete také povolit mezipaměť odepsat hlasitost, která je ve výchozím nastavení zakázána. V tomto případě se data zapsaná do pole neodesílají okamžitě na disky, ale dočasně se ukládají do mezipaměti (u řadiče čipové sady je to BERAN počítač).

To zvyšuje rychlost operací zápisu, ale zároveň zvyšuje riziko ztráty dat v případě selhání. Všichni děláme „zálohy“ (opravdu???) a očekáváme RAID-0 maximální výkon, takže ve všech testech těchto polí bude mezipaměť povolena.

Můžete také spravovat mezipaměť samotných disků v poli. Ve výchozím nastavení je povoleno. U RAID-1 bude měření výkonu prováděno bez mezipaměti, protože pokud jde o spolehlivost, již nedosahuje vysokých rychlostí.

Mimochodem, scénář není tak exotický. Windows Server, jako řadič domény, vždy zakáže mezipaměť systémového disku. Pokud není diskrétní řadič RAID a který se řídí pouze svým ovladačem, rychlost pevných disků několikrát klesne. Pojďme se podívat, jak se SSD disky chovají.

V mém případě vypnutí mezipaměti přes Intel RST z nějakého důvodu nefungovalo - po restartu se znovu zapnul. Musel jsem použít „Správce zařízení“, konkrétně zrušit zaškrtnutí políčka „Povolit ukládání položek do mezipaměti pro toto zařízení“ ve vlastnostech pole RAID.

Toto nastavení a Intel RST jsou propojeny po odškrtnutí možnosti „Disk Data Cache“ také přejde do stavu „Off“ a zůstane tak i po restartu.

V důsledku toho budou testovány následující konfigurace:

  • Vertex 3 RAID-0, velikost pruhu 32 KB;
  • Vertex 3 RAID-0, velikost pruhu 128 KB;
  • Vertex 3 RAID-0, připojení přes porty SATA-II;
  • Vertex 3 RAID-0, pomalý CPU (dvě jádra aktivní, HT vypnuto, 2400 MHz, 1066 MHz CL7 paměti);
  • Vertex 3 RAID-1, mezipaměť pole a disku povolena;
  • Vertex 3 RAID-1, mezipaměť pole a disku zakázána;
  • Crucial M4 RAID-0, velikost pruhu 32 KB;
  • Crucial M4 RAID-1, povolená mezipaměť pole a disku;
  • Crucial M4 RAID-1, pole a disková mezipaměť vypnuta;
  • Single Vertex 3;
  • Single Crucial M4;
  • Pevný disk WD5000AAKX.

Testování v klasických benchmarcích

Značka krystalového disku

Lineární rychlost čtení, MB/s

Téměř dvojnásobné zvýšení rychlosti v RAID-0 se celkem očekává. Velikost pruhu nemá prakticky žádný vliv na velké soubory a benchmark není závislý na procesoru. Ale připojení SATA-II prudce omezuje možnosti systému na úroveň jediného zařízení připojeného přes SATA-III.

RAID-1 pracuje úžasně rychle, čte ze dvou disků současně. Dříve v tvrdé zkoušky Na discích to nebylo pozorováno, ale šlo o starší platformu a starší ovladače. V případě potřeby budete muset zkontrolovat několik pevných disků. Lineární rychlost záznamu, MB/s

Chcete-li zobrazit grafy, povolte JavaScript

Na záznamu se vše mění. Malé M4 jsou slabé při zápisu, takže i jeden Vertex 3 obchází RAID-0 dvou Crucial disků. Můžete vidět, že deaktivace mezipaměti nijak výrazně nesníží rychlost zrcadel. Rychlost náhodného čtení (blok 512 KB), MB/s

Chcete-li zobrazit grafy, povolte JavaScript

Překvapivě při čtení ve velkých blocích se pruhy výrazně zpomalují a lídrem jsou pole RAID-1, bez cache. Na chybu to nevypadá - Vertex 3 i M4 se chovají stejně. Rychlost náhodného zápisu (blok 512 KB), MB/s

Chcete-li zobrazit grafy, povolte JavaScript

V v tomto případě obraz zůstal podobný jako na lineárním záznamu. Až na to, že se mechanický disk zpomalil téměř o polovinu. Rychlost náhodného čtení (blok 4 KB), MB/s

Chcete-li zobrazit grafy, povolte JavaScript

Obvykle se to děje takto: při kontrole čisté přístupové doby pro čtení pole pouze překáží. Rychlost náhodného zápisu (blok 4 KB), MB/s

Chcete-li zobrazit grafy, povolte JavaScript

Malé požadavky na zápis lze ukládat do mezipaměti, takže většina systémů funguje výrazně lépe než požadavky na čtení. Výjimkou jsou konfigurace bez mezipaměti M4 vypadá obzvláště žalostně. Zřejmě nastavení deaktivuje jeho 128 MB cache, bez které SSD klesne na úroveň pevného disku. Ale SandForce neinstaluje mezipaměť, je pro ně dost dobrá.

Mimochodem, věnujte pozornost tomu, jak velká závislost na procesoru se projevila. Využití procesoru v tomto testu je opravdu vysoké. Rychlost náhodného čtení (blok 4 KB, délka fronty 32), MB/s

Chcete-li zobrazit grafy, povolte JavaScript

V hluboké frontě jsou „Marvel hrdinové“ prostě úžasní – sto tisíc IOPS za směšné peníze. Rychlost náhodného zápisu (blok 4 KB, délka fronty 32), MB/s

Chcete-li zobrazit grafy, povolte JavaScript

Více paralelních zápisů umožňuje jednomu Vertexu, zrcadlům bez mezipaměti a systému s pomalým CPU znovu získat výkon. Všichni účastníci (kromě pevného disku) pracují jako ve scénáři velkého bloku.

PCMark 7

Windows Defender, MB/s

Chcete-li zobrazit grafy, povolte JavaScript


import obrázků, MB/s

Chcete-li zobrazit grafy, povolte JavaScript


Střih videa, MB/s

Chcete-li zobrazit grafy, povolte JavaScript


Windows Media Center, MB/s

Chcete-li zobrazit grafy, povolte JavaScript


přidávání hudby, MB/s

Chcete-li zobrazit grafy, povolte JavaScript


spouštění aplikací, MB/s

Chcete-li zobrazit grafy, povolte JavaScript


hry, MB/s

Chcete-li zobrazit grafy, povolte JavaScript


skladovací skóre, body

Chcete-li zobrazit grafy, povolte JavaScript

Rozmanitost je pouze v testu importu obrázků, kterému dominuje Vertex.

Úvod Duplikace zařízení a paralelizace zátěží je na moderním trhu poměrně populární myšlenka. osobní počítače. Nadšenci se často uchylují k vytváření video subsystémů, které používají dva nebo více grafické karty, a ti uživatelé, kteří potřebují nepřekonatelné výpočetní výkon, často spoléhají na víceprocesorové pracovní stanice. Podobný přístup lze aplikovat na diskový subsystém: poměrně jednoduchý způsob, jak zvýšit jeho rychlost, je vytvořit pole RAID z páru (nebo více) pevné disky. Pole úrovně 0 (proužek) zahrnují rozdělení všech uložených informací na stejné části, které jsou rovnoměrně rozmístěny na několika fyzických jednotkách. Výsledkem je, že díky paralelnímu čtení a zápisu dat na několik disků najednou může být rychlost provozu takového systému ve srovnání s jedním diskem několikrát zvýšena.

Ve skutečnosti, na úsvitu šíření SSD spotřebitelské třídy, byly docela populární diskuse o tom, kolik RAID polí pevných disků může poskytnout výkon srovnatelný s rychlostí flash disku. Samozřejmě, nyní jsou tyto časy nenávratně pryč. Zavedení standardu SATA 6 Gbit/s a vznik nové generace řadičů pro SSD disky vedlo k tomu, že rychlost moderní SSD zašli příliš daleko od úrovně výkonu, kterou mohou poskytnout tradiční magnetické disky. Vyvstala však další neméně zajímavá otázka: je možné dále zvýšit výkon diskového subsystému, pokud je do pole RAID 0 sestaveno více SSD?

Důvody, proč by se technologie RAID neměla v případě SSD pozitivně projevit, totiž nejsou na první pohled vidět. Jednotky SSD fungují dobře při práci s malými bloky dat a řadiče čipové sady RAID nabízejí přímou komunikaci s procesorem s šířkou pásma dostatečnou k dosažení rychlosti několikanásobně vyšší než SATA 6 Gb/s. Od RAID 0 založeného na SSD tedy můžete očekávat výrazný nárůst výkonu. Tato myšlenka se zdá být obzvláště atraktivní také proto, že s ní nejsou spojeny žádné dodatečné náklady. Celková kapacita pole RAID 0 je součtem kapacit disků v něm obsažených a cena SSD je přímo úměrná jejich kapacitě. Tedy, pokud k vytvoření pole použijeme „bezplatný“ RAID řadič zabudovaný v čipsetu základní desky, pak ve výsledku dostaneme přibližně stejné náklady na uložení gigabajtu informací jako v případě jediného většího disku.

S ohledem na zjevnou atraktivitu vytváření polí RAID 0 z SSD disků jsme se rozhodli vyzkoušet jejich fungování v praxi. Kingston laskavě souhlasil s tím, že nám poskytne k testování dva 120 GB a jeden 240 GB SSD ze své špičkové řady HyperX, což umožnilo přímé srovnání RAID 0 je pole dvou disků s jednou jednotkou o stejné kapacitě.

Více o Kingston HyperX SSD

Pohony série Kingston HyperX SSD jsou typická řešení založená na řadičích SandForce druhé generace zaměřená na nadšence. Jsou založeny na známém čipu SF-2281 a jsou vybaveny 25 nm synchronní NAND pamětí vyráběnou společnostmi Intel nebo Micron. Jednoduše řečeno, disky HyperX využívají vysoce výkonnou verzi současné platformy SandForce a jejich vnitřnosti jsou podobné těm oblíbené modely jako Corsair Force Series GT nebo OCZ Vertex 3.

Zvýraznění Kingston HyperX Ve srovnání s podobnými disky SandForce mají SSD pouze nápadnější design skříně a proprietární program Panel nástrojů, který vám umožní prohlížet různé informace o disku, včetně významu atributů S.M.A.R.T.

Tato utilita se nápadně podobá OCZ Toolbox s odstraněnou funkcí aktualizace firmwaru (Kingston na to nabízí specializovaný program) a bez funkce Secure Erase.



Stejně jako všechny ostatní disky s řadiči SandForce, kola Kingston HyperX SSD s kapacitou 120 a 240 GB se liší výkonem. Oficiální specifikace to odrážejí takto:



Důvodem rozdílů je počet koncových zařízení NAND použitých v SSD. Vzhledem k tomu, že 25nm MLC flash paměťové čipy mají kapacitu 8 GB, obsahuje 120GB disk 16 flash zařízení, zatímco větší verze má 32 zařízení. Vzhledem k tomu, že řadič SandForce SF-2281 má osmikanálovou architekturu, jsou disky s různou kapacitou nuceny používat techniku ​​střídání volání na flash zařízení s různou násobností pro každý kanál. V případě 120GB SSD je tedy prokládání dvojnásobné a v případě 240GB disku čtyřnásobné. Vysoká frekvence otáčení zaručuje více vysoký výkon, protože místo čekání, až bude zařízení NAND připraveno po další operaci, má ovladač možnost přejít k údržbě dalšího zařízení. V podstatě je to podobné implementaci přístupu RAID 0, ale uvnitř disku, na úrovni řadiče SandForce.

Testovací systém

Pro testování SSD disků jsme sestavili speciální systém postavený na základní desce s čipsetem Intel H67, který, jak známo, disponuje dvojicí SATA 6 Gbit/s portů. Právě na těchto portech testujeme disky SSD.

Obecně platí, že testovací konfigurace zahrnuje následující sadu zařízení:

Procesor – Intel Core i5-2400 (Sandy Bridge, 4 jádra, 3,1 GHz, technologie EIST a Turbo Boost – vypnuto);
Základní deska - Foxconn H67S ( Verze BIOSu A41F1P01);
Paměť - 2 x 2 GB DDR3-1333 SDRAM DIMM 9-9-9-24-1T;
Systémový disk – Crucial m4 256 GB (CT256M4SSD2);
Testovací jízdy:

Kingston HyperX 120 GB (SH100S3/120G, firmware 332);
Kingston HyperX 240 GB (SH100S3/240G, firmware 332);

Operační systém - Microsoft Windows 7 SP1 Ultimate x64;
Ovladače:

Ovladač čipové sady Intel 9.2.0.1030;
Ovladač grafiky Intel HD 15.22.1.2361;
Intel Management Engine Ovladač 7.1.10.1065;
Technologie Intel Rapid Storage 10.8.0.1003.

Problémy s konfigurací RAID 0 z SSD

Pro vytvoření pole SSD disků jsme se rozhodli použít standardní RAID řadič zabudovaný do moderních sad systémových logik. Čipsetové řadiče SATA fungují dobře při práci s jednotlivými SSD a jsou docela vhodné pro naše účely, zejména proto, že nativní podpora RAID je již k dispozici ve většině moderních systémů, to znamená, že nevyžadují další finanční náklady.

Náš standard testovací platforma založené na procesoru LGA1155 a základní deska s čipsetem H67, jehož SATA řadič má vestavěnou podporu pro pole RAID. Pro jeho aktivaci je potřeba v BIOSu změnit provozní režim řadiče SATA z AHCI na RAID. Stačí však změnit odpovídající možnost v Nastavení systému BIOS s největší pravděpodobností povede k nefunkčnosti operačního systému, vyjádřené zobrazením „modré obrazovky“ ve fázi spouštění. Důvod je ten Ovladač RAID Ve Windows je ve výchozím nastavení zakázána. Existují dva způsoby, jak tento problém obejít. Nebo přeinstalujte Windows znovu, v režimu RAID, a poté se během instalace automaticky zapne potřebný ovladač. Nebo bezprostředně před změnou nastavení řadiče SATA v BIOSu nastavte hodnotu proměnné Start umístěné v systémovém registru ve větvi HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Iastorv na 0 a poté znovu nainstalujte Intel Rapid Storage Technology Ovladač řadiče SATA (RST) je již v režimu RAID.

Po zapnutí režim RAID a implementaci do systému potřebné ovladače, můžete přejít přímo k vytvoření pole. Vytváří se prostředky Ovladače Intel RST. V procesu stačí určit disky, které mají být zahrnuty do pole, a jeho provozní režim - RAID 0.



Veškerá ostatní konfigurace se provádí automaticky, ale pokud si to přejete, můžete změnit velikost prokládaného bloku (výchozí - 128 KB) a povolit ukládání do mezipaměti vestavěné do ovladače (může vést ke ztrátě informací během náhlého vypnutí systému).



Z pochopitelných důvodů nedoporučujeme povolovat ukládání do mezipaměti, zejména proto, že podobnou funkcionalitu nabízí samotný operační systém. Co se týče velikosti stripe - bloků, do kterých jsou diskové operace rozděleny pro rozdělení mezi jednotky tvořící pole, pak slepé spoléhání na 128 KB nabízených ovladačem není nejrozumnější přístup. Velká velikost pruhu má smysl pro disky s magnetické disky, protože provádějí lineární operace čtení a zápisu na velkých blocích mnohem rychleji než operace na malých blocích, které vyžadují intenzivní přemístění hlavy. SSD disky mají na druhou stranu velmi rychlé přístupové časy, takže výběr malých proužkových bloků může poskytnout lepší výkon při operacích s malými soubory.

A přestože rychlost jediného Kingston HyperX SSD 120 GB při práci s datovými bloky roste s rostoucí velikostí bloku, nic to neznamená.


Ovladač Intel Rapid Storage Technology (RST) je schopen inteligentně zpracovávat frontu požadavků, poskytuje vysokorychlostní pole RAID 0 z SSD a při použití malých proužkových bloků. Abychom to dokázali, vyhodnotili jsme základní charakteristiky výkon pole RAID 0 sestávajícího z dvojice Kingston HyperX SSD 120 GB s různými velikostmi pruhů.

Velikost datového pruhu = 4 kB:



Velikost datového pruhu = 8 kB:



Velikost datového pruhu = 16 kB:



Velikost datového pruhu = 32 kB:



Velikost datového pruhu = 64 kB:



Velikost datového pruhu = 128 kB:



Jak ukazují výsledky AS SSD Benchmark, ukazatele rychlosti pole s proužkovými bloky různých velikostí jsou si docela blízké. Přesto lze vysledovat závislost rychlosti sekvenčních operací a také rychlosti práce s malými bloky s velkou hloubkou fronty na velikosti pruhu. Nejlepší kombinace výkonu pole je dosaženo pomocí 32K bloků, takže výchozí nastavení samozřejmě nejsou optimální. Protože menší velikost stripe je výhodnější při práci s malými soubory při použití disků založených na platformě SandForce druhé generace doporučujeme použít velikost bloku 32 KB. Právě s tímto nastavením jsme vytvořili pole používané v hlavní části testování.



Při vytváření polí RAID je důležité mít na paměti ještě jeden důležitý detail. Jakmile je pole vytvořeno, začne být systémem považováno za jeden celek a přímý přístup k jeho základním jednotkám se stává nemožným. To je poměrně nepříjemný moment, který slibuje vážné praktické nepříjemnosti. Mít pole RAID SSD disky, nebudete moci aktualizovat jejich firmware, ani zobrazit parametry S.M.A.R.T., ani provést operaci Secure Erase. Co je ale nejnepříjemnější, vzhledem ke specifikům takového pole nebude operační systém schopen posílat diskům příkaz TRIM, přes který je možné účinně čelit degradaci výkonu SSD.

Výkon

Rychlost náhodného a sekvenční čtení/záznamy „čerstvé“ jednotky

K měření rychlosti náhodného a sekvenčního čtení a zápisu používáme test CrystalDiskMark 3.0.1. Tento benchmark je pohodlný, protože vám umožňuje měřit rychlostní charakteristiky SSD disky jak na náhodných nestlačitelných datech, tak při použití plně komprimovatelných dat šablony. Proto níže uvedená schémata ukazují každé dvě čísla - maximální a minimální rychlost pohonu. Reálné indikátory tedy budou ležet v uvedených rozsahech v závislosti na tom, jak je kontrolér SF-2281 dokáže komprimovat.

Všimněte si, že výsledky testů výkonu uvedené v této části odkazují na „čerstvý“ (FOB - Fresh Out-of-Box) nedegradovaný stav disku.


















Z hlediska praktických ukazatelů výkonu je 120GB SSD výrazně pomalejší než jeho 240GB kolega. Pole RAID 0 tvořené dvojicí 120GB disků však stále překonává jediný 240GB disk. Jak vidíte, technologie RAID 0 umožňuje získat rychlost v lineárních operacích a při práci s malými bloky při použití fronty hlubokých požadavků. Běžné náhodné operace se 4 KB bloky nejsou zrychleny, navíc dochází dokonce k určitému zpomalení kvůli prodlevám kvůli nutnosti další arbitráže.

Degradace a výkon v ustáleném stavu

SSD disky bohužel neustále nevykazují vysokorychlostní charakteristiku „čerstvého“ stavu. Ve většině případů se výkon v průběhu času snižuje a v reálném životě nemáme co do činění se stejnou rychlostí zápisu, jak je znázorněno na diagramech v předchozí části. Důvodem tohoto efektu je, že když jsou volné stránky v paměti flash vyčerpány, SSD ovladač dochází k potřebě provést operace vymazání bloků stránek před uložením dat, což zvyšuje značné zpoždění.

Pokud například průběžně zapisujeme data na flash disk, bude mít závislost rychlosti zápisu na čase přibližně následující podobu.



V určitém okamžiku dojde k prudkému poklesu rychlosti zápisu a to se stane právě tehdy celkový objem zaznamenané informace se porovnávají s kapacita SSD. Je zřejmé, že uživatele více zajímá rychlost, kterou bude mít během dlouhého provozu disku, a ne ten krátký časový úsek po instalaci nového SSD, během kterého flash disk vykazuje maximální výsledky. Sami výrobci SSD, naopak uvádějí rychlostní parametry pouze „čerstvých“ disků, protože své produkty představují v tom nejpříznivějším světle. S ohledem na to jsme se rozhodli prozkoumat pokles výkonu, když disk přechází z „čerstvého“ do „použitého“ stavu v ustáleném stavu.

Obrázek katastrofálního poklesu rychlosti uvedený v grafu výše je však poněkud umělý a typický pouze pro případ kontinuálního a nepřetržitého záznamu. Ve skutečnosti, když jsou v klidu, řadiče moderních SSD disků částečně obnovují výkon tím, že nejprve uvolní nepoužívané stránky flash paměti. Na to jsou zaměřeny dva klíčové algoritmy: Idle-Time Garbadge Collection (sběr odpadu) a TRIM. V případě pole RAID 0 je však situace komplikovaná tím, že operační systém nemá přímý přístup k SSD, v důsledku čehož nefunguje technologie TRIM. V tomto ohledu je dost pravděpodobné, že po nějaké době provozu se jeden jediný disk může ukázat jako výrazně lepší než pole RAID.

Nikdo se neobtěžuje tento předpoklad ověřit. Abychom získali obrázek o degradaci disků a polí RAID 0, provedli jsme speciální testy založené na metodice SNIA SSSI TWG PTS. Jejich podstatou je, že jsme sekvenčně měřili rychlost operací zápisu ve čtyřech případech. První - pro „čerstvý“ stav pole a jednotek. Poté - poté, co se disky a pole RAID dvakrát zcela zaplní informacemi. Dále po půlhodinové pauze, která dává řadiči možnost částečně obnovit výkon disku prostřednictvím operace garbage collection. A konečně - po vydání příkazu TRIM.

Měření byla provedena pomocí syntetického benchmarku IOMeter 1.1.0 RC1, ve kterém jsme sledovali rychlost náhodného zápisu při práci se 4 KB flash paměti page-aligned bloky s hloubkou fronty požadavků 32 příkazů. Při testování bylo použito plnění pseudonáhodnými daty.



Degradace produktivity není prázdná fráze, ale skutečná existující problém. Jak je vidět, rychlost pohonů opravdu výrazně klesá. Navíc, jakkoli to může být smutné, sběr odpadu pro disky založené na řadiči SF-2281 prakticky nefunguje. Navzdory tomu, že disky s touto architekturou mají rezervní plochu přibližně 7 % celkové kapacity, vůbec jim to nepomáhá. Pouze příkaz TRIM vrátí výkon na víceméně normální úroveň. Protože však nefunguje pro pole RAID, mohou jednotlivé disky v konečném důsledku nabídnout mnohem lepší výkon zápisu než pole složené z nich.

To vše znamená, že rychlosti zápisu uvedené v diagramech v předchozí části odrážejí pouze malou část celkového obrazu. Ve skutečnosti, poté, co SSD přejdou z čerstvých na použité, se výsledky radikálně změní. Rychlost záznamu v tomto případě bude zcela odlišná: výsledky jejího měření pomocí benchmarku CrystalDiskMark 3.0.1 ukazují následující diagramy.









Jak můžete vidět, během používání rychlost Operace RAID 0 SSD pole je redukováno do takové míry, že se při operacích se 4 KB bloky stává ještě pomalejším než jeden 120GB disk, jehož výkon je udržován na dobrá úroveň příkaz TRIM. V reálném životě je tedy vytvoření pole RAID 0 z SSD odůvodněno především vysokou rychlostí čtení, která nepodléhá snižování, jak se disk plní daty.

Testy ve Futuremark PCMark 7

Známý test PCMark 7 obsahuje samostatný benchmark pro měření výkonu diskového subsystému. Navíc není syntetického charakteru, ale naopak vychází z toho, jak s diskem pracují skutečné aplikace. Tento benchmark reprodukuje skutečné scénáře – stopy využití disku v běžných úlohách a měří rychlost jejich provádění. Navíc reprodukce příkazového toku neprobíhá najednou, ale jak se to děje ve skutečnosti - s určitými pauzami kvůli nutnosti zpracovávat příchozí data. Výsledkem testu je celkový index výkonu diskového subsystému a ukazatele rychlosti v jednotlivých scénářích v megabajtech za sekundu. Všimněte si, že výkon ve scénářích v absolutním vyjádření je relativně nízký, protože k němu přispívají právě ty velmi simulované pauzy mezi jednotlivými I/O operacemi. Jinými slovy, to, co PCMark 7 hlásí, je rychlost diskového subsystému na straně aplikace. Takové hodnoty nám nedávají informace ani tak o čistém výkonu disků, ale o tom, jaké praktické výhody může konkrétní SSD přinést v reálné práci.

Testování PCMark 7 jsme provedli s disky v „použitém“ stavu, ve kterém většinu času fungují v reálných systémech. Výsledky jsou v tomto případě ovlivněny nejen rychlostí řadiče a flash paměti nainstalované v disku, ale také efektivitou interních SSD algoritmů zaměřených na obnovu výkonu.



Integrální skóre PCMark 7 je vynikajícím vodítkem pro spotřebitele, kteří nechtějí zacházet do detailů a spokojí se s jednoduchou ilustrací relativního výkonu disků. A pokud věříte v obdržená hodnocení, pole RAID 0 má celkově nejlepší výkon než jeden disk podobné kapacity. Pokud vezmeme v úvahu, že většina reálných scénářů použití diskového subsystému zahrnuje převahu operací čtení, zdají se získané výsledky celkem logické a důvěryhodné.

Pro dokreslení byste se měli seznámit i s průběžnými výsledky zobrazených disků a pole RAID při absolvování jednotlivých testovacích tras. Navíc v některých situacích dosahují rozdíly ve výkonu působivější velikosti.





















Jak vidíte, existují scénáře, pro které jsou pole RAID z SSD na platformě SandForce druhé generace kontraindikována. Je zřejmé, že tento obrázek je pozorován v případech, kdy je vyžadován diskový subsystém aktivní práce s malými kousky dat. V tomto případě se jedná o scénáře Gaming a Windows Defender.

Testy v Intel NAS Performance Toolkit

Intel NASPT je další test diskového subsystému v reálném světě. Stejně jako PCMark 7 reprodukuje předem připravené typické vzorce aktivity disku a současně měří rychlost jejich průchodu. Tento benchmark spolu s PCMark 7 vám umožní získat vynikající ilustraci výkonu diskového subsystému v skutečné problémy. Stejně jako v předchozím případě jsme provedli testování s disky ve stabilním „použitém“ stavu.



Intel NASPT jednoznačně staví na první místo z hlediska výkonu pole RAID 0 tvořené dvojicí 120GB disků. Rychlost takového dvoudiskového pole je navíc podle dat z testu téměř dvakrát vyšší než výkon jediného SSD. Takto znatelný úspěch technologie RAID však mohou zastínit některé výsledky získané v jednotlivých dílčích testech.




































Vše je v pořádku, pokud jde o čtení informací. Když testovací scénáře zahrnují nahrávání, jediný 240GB SSD vykazuje vyšší rychlosti.

Závěry

Na základě výsledků našeho testování bohužel nejsme schopni dát jednoznačnou odpověď na otázku o vhodnosti sestavení pole RAID 0 z moderních SSD disků. Tento přístup má své výhody, ale i vážné nevýhody a při uzavírání materiálu je můžeme pouze položit na misky vah a nechat čtenáře, aby si konečný závěr udělal sám.

Vytvoření pole RAID 0 je jedním z tradičních způsobů, jak zlepšit výkon diskového subsystému. Tato technika funguje docela dobře pro SSD; zkombinování dvojice disků do pole skutečně umožňuje zvýšit lineární rychlosti a rychlost operací na malých blocích s hlubokou frontou požadavků. Během testů jsme tedy byli schopni získat skutečně působivé sekvenční rychlosti čtení a zápisu pro pole, které výrazně překračují propustnost SATA rozhraní 6 Gbps

Ale neměli bychom zapomínat, že rychlost moderní SSD disky jak se jejich kapacita zvyšuje, zvyšuje se i v rámci jedné produktová řada, takže pole dvou disků úrovně 0 může mít někdy horší výkon než model s větší kapacitou. Ještě víc vážný problém Problém s polem RAID z SSD je ten, že většina řadičů SATA, včetně těch zabudovaných do moderních čipových sad, nepodporuje příkaz TRIM. V důsledku toho v procesu praktické využití pole výrazně snižuje rychlost zápisu, zatímco jednotlivé disky tomuto efektu podléhají v mnohem menší míře.

Výsledkem je, že RAID 0 jasně překonává jeden disk pouze v lineárních operacích, zatímco náhodné požadavky odhalují slabá místa tento přístup. Jinými slovy, nazývat pole RAID 0 produktivnějším řešením, než je jeden flash disk, lze udělat jen s docela vážnými výhradami. Nicméně ve většině testů založených na scénáři skutečné využití diskový subsystém, pole stále vykazovalo vyšší výkon. To znamená, že v průměru se RAID 0 ospravedlňuje, zejména proto, že nevyžaduje žádné další finanční náklady - cena za gigabajt v konečné konfiguraci je stejná pro pole i jeden disk.

Použití SSD jako součásti pole však způsobuje některé další nepříjemnosti. U disků sestavených do pole není možné sledovat jejich „zdravotní stav“ a aktualizovat jejich firmware. Systém složený z dvojice SSD má navíc nižší spolehlivost než jeden disk a výpadek alespoň jednoho disku povede ke ztrátě všech dat uložených v poli.

Potýkáme se s problémem, že většina serverů zakoupených uživateli našich programů je dodávána s konfigurovaným diskovým polem úroveň RAID 5. Následně správci systému nechtějí ztrácet čas překonfigurováním nebo se prostě bojí něco změnit na již nakonfigurovaném a fungujícím počítači. Výsledkem je, že výkon práce s databází nainstalovanou na takovém serveru je nižší než na starém serveru, který v podniku fungoval 3–4 roky. Pravděpodobně lze touhu dodavatelů nakonfigurovat diskové pole na úrovni RAID 5 vysvětlit touhou překvapit klienta obrovská velikost místo na disku. Správci systému zase často jednoduše nemají dostatečné znalosti o tom, jak pole RAID té či oné úrovně funguje. Účelem tohoto článku je odpovědět na dvě otázky:

Proč nemohu použít RAID 5 pro databázový server?

Jak optimálně nakonfigurovat řadič RAID pro hostování databáze serveru Firebird?

Okamžitě si udělejme výhradu, že závěry vyvozené v tomto článku se nevztahují na ty ojedinělé případy, kdy je databáze používána výhradně (nebo hlavně) pro účely pouze pro čtení.

Jak RAID 5 funguje?

Podívejme se na zjednodušené schéma toho, jak pole čtyř disků funguje. Jeden z disků je přidělen k uložení kontrolního součtu. Tři jsou k dispozici pro umístění dat. Na obrázku níže jsou disky s užitečné informace pojmenované A, B a C. Jednotka D ukládá kontrolní součty.

Volá se minimální množství informací, které řadič čte nebo zapisuje na jeden disk pás(pás). Parametry většiny ovladačů, se kterými jsme se setkali, neuvádějí velikost proužku, ale velikost proužek(stripe) – blok informací, který je distribuován na všech discích pole. Na obrázku níže je jeden pruh zvýrazněn tmavší barvou:


Velikost proužku se rovná velikosti proužku vynásobené počtem disků v poli. Tito. v případě čtyř disků a velikosti pruhu 64 kB je minimální množství informací, které je řadič schopen zapisovat nebo číst z disku, 64 / 4 = 16 kB.

Kontrolní součet, který jde na disk D, se vypočítá pomocí následujícího vzorce:

D = A x nebo B x nebo C

Vzhledem k tranzitivitě operace xor, pokud některý z disků s užitečnými informacemi selže, lze jej obnovit xorováním dat zbývajících disků, včetně disku s kontrolním součtem. Například jednotka B selhala.


Když požadujete blok informací z disku B, řadič jej obnoví pomocí vzorce:

B = A x nebo C x nebo D

Server Firebird si vyměňuje datové stránky s diskovým subsystémem. Optimální velikost stránky je ve většině případů 8K, což je hodně menší velikost pruh a ve většině případů ještě menší než velikost pruhu. Situace, kdy se na disk zapisují sekvenční stránky, jsou také poměrně vzácné. Pokud jsou tedy v našem příkladu informace zapsány na disk A, bude muset řadič provést následující operace:

  1. Čtení dat proužků z jednotek B a C. Dvě operace čtení.
  2. Vypočítejte nový kontrolní součet. Dvě xor operace.
  3. Zápis informací na disk A a kontrolní součet na disk D. Dvě operace zápisu.

Celkem dvě čtení, dva zápisy a dvě operace xor. Bylo by překvapivé, kdyby při takovém objemu práce neklesla celková produktivita. Nyní je zřejmé, proč RAID 5 není vhodný pro hostování databázového souboru.

Důležitou vlastností RAID 5 je výrazný pokles výkonu když jeden z disků v poli selže. Koneckonců, nyní, aby bylo možné obnovit informace z tohoto disku, je nutné číst a znovu třídit data ze všech ostatních disků.

Jako každé pravidlo má však i to naše svou výjimku. Výkon diskového pole RAID 5 se nesníží, pokud je velikost energeticky nezávislé mezipaměti řadiče srovnatelná s velikostí databázového souboru. Například s velikostí mezipaměti 512 MB je docela možné použít pole RAID páté úrovně pro databáze do 1-1,5 GB. Za předpokladu, že je server vyhrazen pouze pro práci s databází a neplní jiné úkoly.

Stojí za zmínku, že výše uvedené schéma provozu RAID 5 je z metodických důvodů. vážně zjednodušeno. Ve skutečnosti řadič distribuuje pruhy cyklicky na všechny disky pole, takže neexistuje žádný vyhrazený disk pro ukládání kontrolních součtů. Všechny disky ukládají data i kontrolní součty různých pruhů, což umožňuje vyrovnat jejich zatížení.

Jakou úroveň RAID mám zvolit?

Pokud RAID 5 není vhodný, jakou úroveň bych měl zvolit pro hostování databázového souboru? Pokud je počet disků menší než čtyři, jedinou možností je zrcadlení (RAID 1 Pokud má pole čtyři a více disků, pak je z hlediska výkonu a spolehlivosti optimální RAID 10 - kombinace (RAID 0) více zrcadel (). RAID 1). Někdy jej můžete vidět napsaný jako RAID 1+0. Obrázek níže ukazuje pole RAID 10 se čtyřmi jednotkami. Údaje jednoho pruhu jsou zvýrazněny tmavým tónem. Stínování ukazuje duplikát tohoto pruhu.

Všimněte si také, že pokud pole RAID 5 přežije ztrátu pouze jednoho disku, pak RAID 10 z m zrcadel se dvěma disky přežije ztrátu jednoho až m disků za předpokladu, že v každém zrcadle selže maximálně jeden disk.

Zkusme kvantitativně porovnat pole RAID 5 a RAID 10, z nichž každé má n disků. n je násobek dvou. Předpokládejme, že velikost bloku dat pro čtení/zápis se rovná velikosti proužku. Níže uvedená tabulka ukazuje požadovaný počet operací čtení/zápisu dat a xorování.


Je jasně vidět, že pole RAID 10 má nejen vyšší výkon zápisu, ale také neumožňuje celkové snížení výkonu při poruše jednoho disku.

Jak nakonfigurovat řadič RAID?

Velikost mezipaměti

Čím více, tím lépe. Hlavní je, že ovladač má baterii (akumulátor) pro uložení obsahu paměti při nouzové vypnutí výživa. U mnoha ovladačů není baterie standardně součástí dodávky a je nutné ji objednat samostatně. Bez baterie bude mezipaměť pro zápis zakázána.

úroveň RAID

RAID 10. Pokud je počet disků menší než čtyři, pak RAID 1 (zrcadlový). Proč? Přečtěte si článek od začátku.

Velikost proužku

Velikost stránky databáze vynásobená počtem zrcadel v poli. Pokud má například pole 8 disků zkombinovaných do čtyř zrcadlení po dvou discích a velikost stránky databáze je 8 kB, pak by měla být velikost proužku nastavena na 8 * 4 = 32 kB.

Číst dopředu

Protože sekvenční přístup ke stránkám databáze je velmi vzácný a samy o sobě mohou být v důsledku fragmentace umístěny na různých místech na disku, mělo by být zakázáno čtení dopředu nebo by měl být použit adaptivní režim (v případě sekvenční přístup na dvě po sobě jdoucí stránky).

Napište zásady mezipaměti

Vyberte režim zpětného zápisu. Data budou uložena do mezipaměti a poté zapsána na disk. Operace zápisu bude považována za dokončenou, jakmile budou data umístěna do mezipaměti.

Náhradní disk

Pokud to možnosti řadiče umožňují, je doporučeno zařadit do pole záložní disk. Takový disk je při běžném provozu v pohotovostním stavu. Pokud jeden z funkčních pevných disků selže, je do pole automaticky přidán záložní disk.




Nahoru