Hlavní navigace

Názor k článku AdvFS je otevřený, ale do Linuxu se zřejmě nedostane od Stanislav Brabec - Žurnálování dat je velmi drahá operace, alespoň u...

  • Článek je starý, nové názory již nelze přidávat.
  • 30. 6. 2008 17:02

    Stanislav Brabec
    Žurnálování dat je velmi drahá operace, alespoň u systémů, kde se na to nemyslelo rovnou při návrhu (znamená každý zápis provést jednou do žurnálu, pak podruhé do souboru, a poté provést výmaz ze žurnálu). Z běžných fs jí podporuje jen ext3 (při explicitní volbě "data=journal"). I tam je implicitně vypnutá, a používá se tam, kde je podstatná konzistence dat, i za cenu rychlosti.

    V praxi ovšem ani žurnálování dat ke konzistenci dat nestačí, neboť dokončení jednotlivé zápisové operace nad FS nemusí znamenat dokončení atomické operace nad strukturou souboru (např. po provedení zápisu do souboru je nutné provést seek() a zapsat umístění právě zapsaných dat).

    Tuto úroveň konzistence může nabídnout pouze implementace transakcí nad souborovým systémem - možnost, aby se všechny požadované změny v rámci jedné logické operace objevily ve struktuře FS na fyzickém médiu (disku) najednou. Například tak, že se celou dobu zapisují se speciální značkou pouze do žurnálu. Pokud je po havárii přehráván žurnál, operace, k jejichž značce chybí v žurnálu příznak dokončení, se anulují.

    Samozřejmě, že toto vše lze implementovat i v uživatelském prostoru, ale je to méně efektivní.