VyÜlo v t²denφku: COMPUTERWORLD
╚φslo:5/95
RoΦnφk:1995
Rubrika/kategorie: Co (ne)najdete ve slovnφku

zp∞t do archivu Φlßnk∙ | rejst°φk | p°edchozφ Φlßnek | nßsledujφcφ Φlßnek

Ji°φ Peterka

Disk array

äMφsta na disku je v₧dy mßlo" - tak by asi Ülo formulovat jednu z velmi aktußlnφch ₧ivotnφch moudrostφ. V²robci se sice doslova p°edhßnφ v tom, jak velkΘ disky sv²m zßkaznφk∙m nabφdnou, ale ti zase na druhΘ stran∞ dokß₧φ rychle äzaplßcat" i ten sebev∞tÜφ disk. A tak se vesele vyrßbφ, nakupuje, a ob∞ strany by vlastn∞ mohly b²t docela spokojeny. Nenφ ale problΘm n∞kde trochu jinde, ne₧ v kapacit∞ pevn²ch disk∙? Podφvejme se na celou v∞c z pon∞kud jinΘho ·hlu.

Kdybychom se zrekapitulovali v²voj pevn²ch disk∙ za poslednφch cca 10 let, zjistili bychom n∞kterΘ zajφmavΘ skuteΦnosti: kapacita disk∙ se za tu dobu zv²Üila skuteΦn∞ velmi v²razn∞ - kdo by jeÜt∞ p°ed deseti lety by¥ jen pomyslel na gigabytovΘ pevnΘ disky. OvÜem rychlost, s jakou pevnΘ disky pracujφ - tj. rychlost, s jakou dokß₧φ Φφst po₧adovanß data, resp. n∞jakß data zapisovat - se zv∞tÜila jen n∞kolikrßt. Budeme-li hodn∞ optimistiΦtφ, pak asi desetkrßt. Jak se ale mezitφm zrychlily procesory? Jestli₧e prvnφ IBM PC zaΦφnalo s procesorem, pracujφcφm na frekvenci 4,77 MHz, pak dnes se hodinovß frekvence pou₧φvan²ch procesor∙ blφ₧φ ke 100 MHz. Navφc to jsou u₧ i dosti odliÜnΘ procesory, kterΘ toho za jednu Φasovou jednotku (jeden ätik" sv²ch hodin) stihnou ud∞lat vφce. Reßln² nßr∙st rychlosti je proto t°eba hledat n∞kde v °ßdu padesßtinßsobku Φi jeÜt∞ v²Üe.

To ale znamenß, ₧e procesory svou rychlostφ znaΦn∞ p°edb∞hly mo₧nosti pevn²ch disk∙. V d∙sledku toho se zaΦaly stßle Φast∞ji objevovat nejr∙zn∞jÜφ diskovΘ vyrovnßvacφ pam∞ti (diskovΘ cache), kterΘ majφ za ·kol zmφn∞nou disproporci minimalizovat. Tyto pam∞ti ale fungujφ tak, ₧e optimalizujφ spoluprßci procesoru s diskem a zp∙sob vyu₧itφ disku - sna₧φ se jej co nejlΘpe ävytφ₧it" - ale samotnou rychlost Φtenφ a zßpisu na vlastnφ disk nedokß₧φ nijak ovlivnit.

Nenφ proto divu, ₧e se objevily i jinΘ techniky, usilujφcφ o snφ₧enφ disproporce mezi rychlostmi procesor∙ a diskov²ch systΘm∙. N∞kterΘ z nich se ubφrajφ cestou zrychlovßnφ jednotliv²ch pevn²ch disk∙ r∙zn²mi technick²mi a technologick²mi opat°enφmi. JinΘ techniky pak rad∞ji volφ pon∞kud jinou cestu - mφsto jedinΘho, velmi rychlΘho pevnΘho disku, se sna₧φ vyu₧φt vφce pevn²ch disk∙, kterΘ se navenek ätvß°φ" jako jedin² celek (jedin² pevn² disk). Po₧adovanΘ zv²Üenφ rychlosti pak tyto techniky dosahujφ tφm, ₧e se sna₧φ maximßln∞ vyu₧φt potencißlnφho paralelismu, a Φtenφ a zßpis äsklßdajφ" z paraleln∞ probφhajφcφch diskov²ch operacφ s jednotliv²mi fyzick²mi disky. KonkrΘtnφ zp∙sob, jak²m toho dosahujφ, vychßzφ nejΦast∞ji z techniky ädisk striping" (kterou jsme si popisovali v minulΘm vydßnφ tohoto serißlu). Pokud jde o terminologii, oznaΦuje se takto °eÜenΘ diskovΘ systΘmy jako diskovß pole (disk array).

DiskovΘ pole je tedy cel² systΘm pevn²ch disk∙, kter² se navenek chovß stejn∞, jako jedin², velmi rychl² disk. Na jednotlivΘ pevnΘ disky, pou₧φvanΘ v rßmci takovΘhoto diskovΘho systΘmu, ale nemusφ b²t kladeny ₧ßdnΘ extrΘmnφ rychlostnφ po₧adavky. Jestli₧e se efektu zrychlenφ dosahuje p°edevÜφm jejich soub∞₧n²m (paralelnφm) vyu₧itφm, pak je dokonce mo₧nΘ, aby tyto jednotlivΘ disky naopak mohly b²t i äpr∙m∞rn²mi disky", jak²ch dneÜnφ v²robci chrlφ na trh celΘ zßplavy, a jejich₧ cena dφky tomu vychßzφ velmi p°φzniv∞.

Jestli₧e se ale n∞kdo rozhodne äpostavit" diskovΘ pole na takov²chto cenov∞ nenßkladn²ch discφch, pak je asi rozumnΘ, aby jich pou₧il vφce, ne₧ by bylo nezbytn∞ nutnΘ, a dosßhl urΦitΘ odolnosti celΘho diskovΘho pole v∙Φi v²padk∙m - konkrΘtn∞ v∙Φi v²padk∙m jednotliv²ch fyzick²ch disk∙ v rßmci takovΘhoto subsystΘmu. No a tφm jsme se ji₧ dostali k myÜlence, ze kterΘ vychßzφ v∞tÜina dneÜnφch implementacφ diskov²ch polφ. Tuto myÜlenku vcelku dob°e vystihuje i jejich oznaΦenφ: RAID. Jde o zkratku z anglickΘho Redundant Array of Inexpensive Disks, neboli: äredundantnφ pole nenßkladn²ch disk∙".

RAID je tedy oznaΦenφ pro techniku, resp. zp∙sob implementace diskovΘho pole, s vyu₧itφm äb∞₧n²ch" lacin∞jÜφch disk∙. Ve skuteΦnosti ale jde o spoleΦnΘ oznaΦenφ celΘ °ady technik, kterΘ se liÜφ v n∞kter²ch konkrΘtnφch implementaΦnφch aspektech, a s nimi pak i v celkovΘm efektu, kter² p°inßÜφ. JednotlivΘ techniky jsou p°itom uspo°ßdßny do ·rovnφ, v souΦasnΘ dob∞ od 0 do 5.

Technika RAID ·rovn∞ 0 (RAID level 0) je zam∞°ena pouze na zrychlenφ prßce s diskem. K tomu vyu₧φvß techniku disk striping (viz minule), a zapisovanß data tedy ärozklßdß" na vφce jednotliv²ch disk∙. T∞chto disk∙ je ale prßv∞ tolik, kolik jich je nezbytn∞ t°eba, a nenφ pou₧it ₧ßdn² dalÜφ (redundantnφ), kter² by umo₧≥oval dosßhnout urΦitΘ ·rovn∞ zabezpeΦenφ proti v²padku (fault tolerance).

Technika RAID ·rovn∞ 1 (RAID level 1) je ve svΘ podstat∞ jen technikou ädisk mirroring", kterou jsme si popisovali v p°edminulΘm vydßnφ tΘto rubriky. Nerozklßdß zßt∞₧ na vφce disk∙, ale veÜkerß data zapisuje na jedin² disk. Vedle tohoto disku je ale soub∞₧n∞ zapisuje i na druh², äzrcadlov²" disk, kter² je schopen zastoupit prvnφ disk v p°φpad∞ jeho v²padku. Technika RAID 1 tedy nenabφzφ ₧ßdnΘ zrychlenφ, ale nabφzφ odolnost v∙Φi v²padku jednoho z obou pou₧it²ch disk∙. Pokud bychom cht∞li b²t d∙slednφ, z°ejm∞ bychom ji ani nem∞li pova₧ovat za implementaci diskovΘho pole.

Technika RAID ·rovn∞ 3 (RAID level 3) ji₧ op∞t pou₧φvß techniku disk striping, alternativn∞ bu∩ na ·rovni jednotliv²ch bit∙, nebo na ·rovni cel²ch byt∙. Data tedy ärozklßdß" po jednotliv²ch bitech Φi cel²ch bytech na vφce fyzick²ch disk∙, ke kter²m pak jeÜt∞ p°idßvß jeden dalÜφ disk pro paritu. Tφm dosahuje jak zrychlenφ prßce s diskem, tak i odolnosti v∙Φi v²padku jednoho (kterΘhokoli) z pou₧it²ch disk∙.

Technika RAID ·rovn∞ 4 (RAID level 4) je obdobnß technice RAID 3, avÜak pou₧φvß techniku disk striping na ·rovni cel²ch diskov²ch sektor∙.

Technika RAID ·rovn∞ 5 (RAID level 5) pak takΘ pou₧φvß techniku disk striping a zapisovanß data rozklßdß na jednotlivΘ disky po cel²ch diskov²ch sektorech. Nepou₧φvß ale jeden disk, vyhrazen² jen pro paritnφ data. Mφsto toho p°φsluÜnΘ zabezpeΦovacφ informace rozklßdß rovnom∞rn∞ po vÜech discφch, kterΘ mß k dispozici. Tato technika je v souΦasnΘ dob∞ v praxi z°ejm∞ nejpou₧φvan∞jÜφ, p°iΦem₧ nabφzφ jak odolnost v∙Φi v²padku (jednoho ze sv²ch disk∙), tak i celkovΘ zrychlenφ p°i prßci s diekm. ZajφmavΘ ale je, ₧e äzrychlovacφ" efekt tΘto metody (stejn∞ jako metod RAID 3 a 4) je menÜφ ne₧ v p°φpad∞ techniky RAID ·rovn∞ 0. D∙vodem je re₧ie, kterß u technik RAID 3 a₧ 5 p°ipadß na prßci s paritnφmi daty, a kterß v p°φpad∞ RAID ·rovn∞ 0 nenφ ₧ßdnß.


zp∞t do archivu Φlßnk∙ | rejst°φk | p°edchozφ Φlßnek | nßsledujφcφ Φlßnek
Tento Φlßnek m∙₧e b²t voln∞ Üφ°en, pokud se tak d∞je pro studijnφ ·Φely, na nev²d∞leΦnΘm zßklad∞ a se zachovßnφm tohoto dov∞tku. Podrobnosti hledejte zde, resp. na adrese http://archiv.czech.net/copyleft.htm