?? Podpora raw devices - Ponekud delsi

Petr Holecek hol na lps.zcu.cz
Pátek Březen 13 16:56:32 CET 1998


On Fri, 13 Mar 1998, Michal Vanka wrote:

> >         Linux zadne raw device nema. Zapis primo z user-space na disk
> > lze samozrejme delat v kazdem rozumnem UN*Xu (nejlepe pres mmap()),
> > ridit primy zapis na disk lze pres fsync() a msync(). Duvodu, proc
> > za teto situace mit v kernelu raw devices, je dost malo.
> 
> To znamena, ze Linux, tak jak je, je nevhodna platforma
> pro jakykoli rozumny DB server prave z duvodu nepritomnosti
> diskoveho raw device. 

Nevim jak jine databaze ale u Oracle je to tak, ze podporuje obe varianty,
to znamena, ze umi pracovat jak s raw device, tak se soubory na
filesystemu. Zvyseni vykonu prip pouziti raw devices pritom udavano
maximalne 10 az 15%. Z hlediska spravy databaze znamena pouziti raw
devices pomerne dost prace navic. 
    
> Neboli jinymi slovy, dodrzim
> li shodne podminky a nainstaluji DB server na Linux
> a na jiny UNIX, bude ten Linuxovy vzdy pomalejsi,
> prave z duvodu nemoznosti pouzit diskove raw devices.

No to je pomerne odvazne tvrzeni, ono to zavisi take na jinych vecech.
Podle mych zkusennosti mel Oracle server (za pouziti IBCS2) na linuxu
mirne lepsi odezvy nez na SCO Unixu a to za situace kdy SCO pouzivalo SCSI
disky a Linux IDE, coz je podle meho nazoru jeste vyraznejsi handicap. Pro
uplnost dodavam, ze raw device nepouzival ani jeden stroj, takze vysledek
je zkresleny ruznou rychlosti filesystemu :-).

V podstate mate pravdu v tom, ze pro databazi je dobre mit rychly pristup
k diskum, ale i nejrychlejsi disky databazi hodne zdrzuji. Soucasne trendy 
smeruji k tomu, ze data jsou po celou dobu prace serveru v pameti a
rychlost disku je kriticka pouze pro zapis transakcnich logu (ale to je
sekvencni zapis do souboru, coz cache filesystemu pochopi nespis
spravne). Ostatni zapisy probihaji asynchronne, takze se to na
propustnosti serveru neprojevi. Data se ctou v optimalnim pripade z disku
pouze jednou a zustavaji v pameti. 
   
> Pro dosazeni stejneho vykonu by musel vyrobce, ktery se
> rozhodne portovat svoji DB na Linux (a tato DB pouziva pro zvyseni
> sveho vykonu diskove raw devices) v ni udelat nejake
> vetsi zasahy, kterymi by nepritomnost techto devices obesel.

V tomto pripade mate naprostou pravdu. 



----------------------------------------------- Petr Holecek ----------
                                                hol na lps.zcu.cz




Další informace o konferenci Linux