Eduard Šiškin
Hiljuti välja töötatud uuenduste hulgas on pakkumine
võimalus kasutajal lisada väike suure jõudlusega
ploki seade (nt NVRAM) kutsutakse
suhteliselt suur loogiline maht, mis koosneb aeglasest
eelarveajamid. See jätab mulje, et kõik
helitugevus koosneb samast kallist suure jõudlusega
seadmeid, nagu "puhverserveri ketas".
Rakendatud meetod põhines lihtsal tähelepanekul, et praktikas ei kirjutata kettale pidevalt ning I/O koormuskõver on piikide kujuga. Selliste “tippude” vahelisel ajal on alati võimalik puhverserveri kettalt andmeid lähtestada, kirjutades kõik taustal olevad andmed (või ainult osa) ümber põhimällu, “aeglasesse” salvestusruumi. Seega on puhverserveri ketas alati valmis uue andmeosa vastuvõtmiseks.
See tehnika (tuntud kui Burst Buffers) sai algselt alguse aastal
kõrgjõudlusega andmetöötluse (HPC) valdkonnad. Kuid see osutus nõudlikuks ka tavaliste rakenduste jaoks, eriti nende jaoks, mis seavad suuremaid nõudmisi andmete terviklikkusele (tavaliselt erinevat tüüpi andmebaasid). Sellised rakendused teevad mis tahes muudatusi mis tahes failis aatomi viisil, nimelt:
Vabastab vanade andmetega hõivatud plokid.
Kõik need sammud põhjustavad ühel või teisel määral olulisi
jõudluse halvenemine mis tahes failisüsteemis. Olukord
paraneb, kui uus fail kirjutatakse esmalt eraldatud faili
suure jõudlusega seade, mis täpselt juhtub
Burst Buffers toega failisüsteem.
Reiser5-s on plaanis valikuliselt saata mitte ainult
faili uued loogilised plokid, aga ka kõik määrdunud lehed üldiselt. Enamgi veel,
mitte ainult andmetega lehti, vaid ka metaandmetega, mis
on kirjutatud sammudes (2) ja (3).
Puhverserveri ketaste tugi toimub tavapärase töö kontekstis
Reiser5 loogilised mahud,
koondsüsteem "puhverserveri ketas - põhimälu" on normaalne
loogiline maht, ainsaks erinevuseks on see, et puhverserveri kettal on prioriteet
kettaaadressi eraldamise poliitika muude köitekomponentide hulgas.
Puhverserveri ketta lisamisega loogilisse köitesse ei kaasne ühtegi
andmete tasakaalustamine ja selle eemaldamine toimub täpselt samamoodi nagu
tavalise ketta eemaldamine. Kõik puhverserveri ketta toimingud on aatomi.
Vigade käsitlemine ja süsteemi juurutamine (sealhulgas pärast süsteemi krahhi) toimub täpselt samamoodi, nagu puhverserveri ketas oleks tavaline komponent
loogiline maht.
Pärast puhverserveri ketta lisamist loogilise helitugevuse kogumaht
suureneb selle ketta mahu võrra. Vaba ruumi jälgimine
puhverserveri ketas teostatakse samamoodi nagu teiste mahukomponentide puhul, st. kasutades utiliiti volume.reiser4(8).
Puhverserveri ketast tuleb perioodiliselt puhastada, s.t. lähtestage andmed alates
see põhimällu. Pärast beetastabiilsuse saavutamist Reiser5
koristamine on planeeritud automaatseks (seda haldab
spetsiaalne tuumaniit). Selles etapis vastutus puhastamise eest
jääb kasutajale. Andmete lähtestamine puhverserveri kettalt põhikettale
salvestusruumi luuakse, helistades lihtsalt utiliidile volume.reiser4 valikuga
"-b". Argumendina peate määrama loogika ühenduspunkti
mahud Loomulikult peate perioodiliselt puhastama. Sest
Selleks saate kirjutada lihtsa shelliskripti.
Kui puhverserveri kettal pole vaba ruumi, siis kõik andmed
kirjutatakse automaatselt põhimällu. Samal ajal vaikimisi
FS-i üldine jõudlus väheneb (pidevate kõnede tõttu
kõigi olemasolevate tehingute sooritamise kord). Valikuliselt saate määrata
režiim ilma jõudlust kaotamata. Kuid antud juhul ketas
Puhverserveri ruumi kasutatakse vähem tõhusalt.
Puhverkettana on mugav kasutada metaandmete alamsektsiooni (telliskivi), kui see on loodud piisavalt suure jõudlusega plokkseadmel.
Allikas: opennet.ru