Reiser5 najavljuje podršku za Burst Buffers (Slojevi podataka)

Eduard Shishkin najavljeno nove mogućnosti razvijene u okviru projekta Reiser5. Reiser5 je a značajno redizajnirana verzija sistema datoteka ReiserFS, u kojoj je podrška za paralelno skalabilne logičke volumene implementirana na nivou sistema datoteka, a ne na nivou blok uređaja, što vam omogućava da efikasno distribuirate podatke preko logičkog volumena.

Među nedavno razvijenim inovacijama, pružanje
mogućnost za korisnika da doda mali uređaj visokih performansi
blok uređaj (npr. NVRAM) pozvan proxy disk, to
relativno veliki logički volumen sastavljen od sporo
budžetski pogoni. Ovo će stvoriti utisak da sve
volumen je sastavljen od istih skupih visokih performansi
uređaja, poput „proxy diska“.

Implementirani metod se zasnivao na jednostavnom zapažanju da se u praksi na disk ne upisuje stalno, a I/O kriva opterećenja ima oblik pikova. U intervalu između takvih „vrhova“, uvijek je moguće resetirati podatke sa proxy diska, prepisivanjem svih podataka (ili samo dijela) u pozadini u glavnu, „sporu“ memoriju. Dakle, proxy disk je uvijek spreman da primi novi dio podataka.

Ova tehnika (poznata kao Burst Buffers) izvorno je nastala u
oblasti računarstva visokih performansi (HPC). Ali pokazalo se i da je tražen za obične aplikacije, posebno za one koje postavljaju povećane zahtjeve za integritetom podataka (obično različite vrste baza podataka). Takve aplikacije izvode sve promjene u bilo kojoj datoteci na atomski način, naime:

  • prvo se kreira nova datoteka koja sadrži promijenjene podatke;
  • ova nova datoteka se zatim upisuje na disk pomoću fsync(2);
  • nakon toga se novi fajl preimenuje u stari, što je automatski
    Oslobađa blokove zauzete starim podacima.

    Svi ovi koraci, u ovom ili onom stepenu, uzrokuju značajne
    degradacija performansi na bilo kom sistemu datoteka. Situacija
    poboljšava ako se nova datoteka prvo upiše u dodijeljenu
    uređaj visokih performansi, što se upravo dešava u
    sistem datoteka sa podrškom za Burst Buffers.

    U Reiser5 se planira opciono slanje ne samo
    novi logički blokovi datoteke, ali i sve prljave stranice općenito. Štaviše,
    ne samo stranice sa podacima, već i sa meta podacima koji
    su napisani u koracima (2) i (3).

    Podrška za proxy diskove se odvija u kontekstu redovnog rada sa
    Reiser5 logički volumeni, najavio početkom godine. To je,
    agregatni sistem "proxy disk - glavna memorija" je normalan
    logički volumen sa jedinom razlikom što proxy disk ima prioritet
    između ostalih komponenti volumena u politici dodjele adrese diska.

    Dodavanje proxy diska logičkom volumenu nije popraćeno ničim
    rebalans podataka, a njegovo uklanjanje se događa na potpuno isti način kao
    uklanjanje običnog diska. Sve operacije proxy diska su atomske.
    Rukovanje greškama i implementacija sistema (uključujući i nakon pada sistema) se dešavaju na potpuno isti način kao da je proxy disk obična komponenta
    logički volumen.

    Nakon dodavanja proxy diska, ukupni kapacitet logičkog volumena
    povećava za kapacitet ovog diska. Praćenje slobodnog prostora
    proxy disk se izvodi na isti način kao i za ostale komponente volumena, tj. koristeći uslužni program volume.reiser4(8).

    Proxy disk se mora periodično čistiti, tj. resetujte podatke sa
    to u glavnu pohranu. Nakon postizanja beta stabilnosti Reiser5
    planirano je da čišćenje bude automatsko (njome će upravljati
    posebna nit kernela). U ovoj fazi odgovornost za čišćenje
    zavisi od korisnika. Resetovanje podataka sa proxy diska na glavni
    skladište se proizvodi jednostavnim pozivanjem uslužnog programa volume.reiser4 sa opcijom
    "-b". Kao argument, trebate navesti tačku montiranja logičkog
    tomovi Naravno, morate imati na umu da povremeno obavljate čišćenje. Za
    Za ovo možete napisati jednostavnu shell skriptu.

    Ako nema slobodnog prostora na proxy disku, svi podaci
    se automatski upisuju u glavnu memoriju. Istovremeno, podrazumevano
    ukupne performanse FS-a su smanjene (zbog stalnih poziva
    procedure za izvršenje svih postojećih transakcija). Opciono možete podesiti
    režim bez gubitka performansi. Međutim, u ovom slučaju disk
    Prostor proxy uređaja će se koristiti manje efikasno.
    Pogodno je koristiti pododjeljak metapodataka (ciglu) kao proxy disk, pod uvjetom da je kreiran na blok uređaju dovoljno visokih performansi.

    izvor: opennet.ru

  • Dodajte komentar