Sziasztok!
Van nekem 2 db Samsung 250 Gbyte-os vinyóm, amiből szeretném kihozni a maximumot. Mindegyiken párhuzamosan 4-5 program fut ami rendszeresen olvas/ír róluk elég nagy sebességgel(folyamatosan olyan 5-10 Mbyte/s). Arra gondoltam, hogy Raid 0-ban oldanám meg a dolgot, mivel az adatvesztés az nem baj, a lényeg, hogy gyors legyen a rendszer. Milyen típusú vezérlőkártyát ajánlotok, illetve ha van pozitív tapasztalat, akkor jöhet konkrétan a neve is. Ha pedig más megoldást javasoltok azt is szívesen fogadom!
- 1449 megtekintés
Hozzászólások
- A hozzászóláshoz be kell jelentkezni
Egy kicsit módosítok: maximum olyan 15 ezer forintot szánnék erre a célra!
- A hozzászóláshoz be kell jelentkezni
Szervusz !
Mivel a HW-Raid kártya interrupt-ot használ, tehát számomra kérdéses, hogy ez nem okoz-e olyan mértékű lassulást, hogy már a SOFT-RAID (mdadm) is képes ugyanerre az adatátviteli teljesítményre.
HW kártya -véleményem szerint- csak szerver gépben használandó.
CSZ
- A hozzászóláshoz be kell jelentkezni
Szia!
Én software-RAID-re szavazok, feltétlen mdadm -mal.
FEntebb írod, hogy max. 15.000 -et szánnál rá. Azért meg amúgy is csak ál-hardveres RAID kártyát kapsz, ami valójában software-s RAID-et csinál.
És gagyi.
Akkor már inkább tényleg mdadm.
(Néhány helyen olyan tesztet olvastam, ahol 150-200k HUF-os RAID kártyákkal hasonlították össze az mdadm -et, és verte ezeket a kártyákat...)
Én mdadm -ot használok 4db 1TB Hitachi Ultrastar lemezeken (RAID5, C2D 2Ghz, 2GB RAM), a fájlrendszerről 130-150MB/s-sel olvas a gép, míg a proci használat szinte észrevehetetlen.
RAID0-ban is próbáltam egyszer, még a végleges konfigurálás előtt, ugyan ezen a gépen, ha jól emlékszem, 300MB/s küröl teljesített.
- A hozzászóláshoz be kell jelentkezni
nem csoda, hogy alig eszlelsz procihasznalatot: olvasasnal a raid5 algoritmus nem terheli a procit.
- A hozzászóláshoz be kell jelentkezni
Igen, ezt végülis tudom, csupán azért írtam oda, hogy teljesebb képet adjak a kérdezőnek. Minden esetre köszönöm a pontosítást.
Természetesen az írás már más tészta, hisz ott kell xor-olni rendesen, de az sem vészes.
- A hozzászóláshoz be kell jelentkezni
8-10 program az nem az a terheles, ami miatt napjainkban elvonalbeli megoldasokhoz kell nyulni. 2 diszk nem az a mennyiseg, ami barmilyen szempontbol (interrupt, savszel) leterhelne egy mai gepet.
A diszk IO optimalizalas alapveto lepesei, fontossagi sorrendben:
- tunningoljuk az alkalmazast (ne irjon/olvasson allandoan)
- tunningoljuk a filesystemet (az alkalmazasnak megfelelo legyen)
- tunningoljuk a disk kiosztast (hany diszk, milyen raid)
- tunningoljuk (valasztunk) az alaplapot (interrupt kiszolgalasa legyen optimalis)
Mondjuk tegyuk fel, hogy az alkalmazasaid kibirjak az adatvesztest. (Mert ezt irod, mittomen, eleg neked a mentes). Mondjuk tegyuk fel, hogy az alkalmazashoz nem tudsz hozzanyulni (mert rendszergazda vagy).
Akkor tunningoljuk a filesystemet. Linux alatt a leggyorsabb a tmpfs (imsetlen, az adatok megorzese nem volt nalad kovetelmeny!).
Tehat mondjuk azt csinalnam, hogy 64 bites kernel, mindket diszken tobbszaz megabyte swap terult, egy irgalmatlan nagy tmpfs, amiben minden aktiv adat bennevan. Amikor elindul a rendszer, akkor a mentesbol, mas helyrol behuzod az adatokat a tmpfs-re, es ugy inditod az alkalmazast. Ekkor a memoria-diszk egyensulyban az optimalis performaciara a kernel ugyel (altalaban jol) a fragmentacio nem lesz erezheto problema. A diszk maradek reszet meg tukroznem, hogy az adataid meglegyenek.
Nem erre vartal valaszkent, ugye? :-)
A kerdesedre adott konkret valasz talan az, hogy linux alatt nem szoktak hw raid kartyat venni, mert az swraid eleg jo; ami irasi teljesitmeny novekedest jelentene az a hw kartyan levo battery backed up write cache, az ilyen kartyak viszont durvan dragak. Windows alatt szoktak mindenaron hw kartyat szeretni, mert sokkal konnyebb lesz a management (atlathato es belathato). Amit ezen tul HW beruhazasra lehetne forditani, az 15E forintbol sok-sok serital.
- A hozzászóláshoz be kell jelentkezni
+ tuningoljuk az I/O ütemezőt access patterntől függően
+ tuningoljuk a block device readahead-et
+ szerezzünk még ramot a gépbe, hogy sok legyen a cache és növekedjen a találati arány (15k-ból már kijöhet 4GB DDR2 is manapság!)
Arra is figyelni kell, hogy a RAID0 igazából csak szekvenciális átvitelnél segít sokat, illetve random hozzáférések közül a blokkméret alattiaknál. Ellenkező esetben a két vinyó párhuzamosan egyszerre fog seekelni és semmi mérhető előnyöd nem származik belőle. Mivel te azt írod, hogy sok külön-külön szekvenciális stream folyik párhuzamosan, ezért még lehet, hogy jobban is jársz, ha külön független vinyók szolgálják ki, mert így egy-egy vinyónak kevesebb stream között kell seekelnie. Ami neked kell az egy olyan filerendszer, ami hatékonyan kezeli a több párhuzamos streamet. Tudtommal az XFS ilyen. I/O ütemezőnél majdnem biztos, hogy a deadline lesz a nyerő, de ha a latency is számít, akkor lehet cfq is. A readahead-et pedig célszerű jó nagyra venni, 2048k körül szokott lenni az optimum egy szekvenciális átvitelhez, de ezt be kell játszani méréssel, mert eléggé gép/terhelésfajta függő.
---
Sok gyerekkel ellentétben én sose akartam tűzoltó lenni. Lettem helyette informatikus. Nem találjátok ki, hogy mit csinálok nap mint nap...
- A hozzászóláshoz be kell jelentkezni