Jak funguje takový disk?
Na začátku je fronta požadavků, které se vyřizují nějakou rychlostí.
Pokud má disk NCQ, pak se tato fronta přerovnává.
Fronta vypadá asi takto:
Zapiš S12588
Přečti S22588
Zapiš S12584
A jak funguje takový řadič?
Probíhá zde distribuce, tj. řekne všem diskům naráz, co mají číst.
Pan RAID si posílá pro data Pepu a Frantu.
Pokud Pepa i Franta přinesou to, co řadič chce, v rámci cache naráz, je vše v pořádku.
Ale co když Franta bude 2x rychlejší než Pepa?
Pan RAID si klepe na hodinky a říká "Kde je ten debil s těmi daty?"
Franta krčí rameny "Já je tu už mám, já jsem totiž nejlepčí!"
Pan RAID vrtí hlavou "Toho poslat pro smrt, no sereme na to, tohle zahazuji a přines mi něco jiného!"
Možná se Vám zdá, že 1/3 není tak velký rozdíl, ale u dlouhé fronty to může znamenat, že 1/3 dat je už připravená!
Tedy vždy nejméně 1/3 dat z rychlejšího disku čeká na to, až se vyspáruje s tím pomalejším = 1/3 dat se musí schovávat v paměti.
No a pokud mám v paměti 1/3 dat za nějaký časový úsek, pak záleží na tom, kolik těch dat vůbec je a jak velká je cache toho řadiče.
Pokud 1/3 přenesených dat za specifický časový úsek přesáhne objem paměti cache (resp. buffer), pak mohou nastat dvě situace.
A) Řadič začne kravit a data zahazovat.
B) Řadič začne něco větřit, hlásí chybu a myslí si, že pomalejší disk je vadný.
C) Tupě čeká na to, až mu ten pomalejší disk dodá data a než je dostane, rychlý disk neúkoluje.
Tedy pokud ještě stíháte vnímat, co se snažím neuměle říct, TAK ZÁLEŽÍ NA ZÁTĚŽI, VELIKOSTI CACHE A SKUTEČNÉM ROZDÍLU RYCHLOSTÍ DISKŮ.
Pokud jediný požadavek bude na pár paketů z gayromán.pdf a řadič není přemoudřelý, nestane se vůbec nic.
Pokud bude požadavků hodně, může se stát, že při maximální zátěži to začne kravit!
Jinak mám zkušenost, že to někdy jde, někdy nejde, někdy to nekraví vůbec, někdy to ani nenastartuje a někdy to kraví jen za specifického stavu (hodně přístupů k malým souborům).....
A to je důvod, proč doporučuji používat do raid pole stejně rychlé disky!
Nemám rád, když se někde objevují podivné problémy, jako že se pole čas od času na 30 sekund zamyslí, nic nezahlásí, ale tváří se mrtvě a pak se rozjede!
Možná máte zkušenosti jiné, podělte se.