Home

journalingDateisysteme

Journaling-Dateisysteme sind Dateisysteme, die Änderungen zuerst in einem speziellen Journal (Protokoll) festhalten, bevor sie in die eigentliche Dateisystemstruktur geschrieben werden. Das Journal dient dazu, nach einem Absturz oder Stromausfall den Zustand des Dateisystems schnell und zuverlässig wiederherzustellen. Je nach Implementierung journalieren sie entweder nur Metadaten (Verzeichnisstrukturen, Inode-Zuweisungen) oder zusätzlich auch Dateiinhalte.

Es gibt zwei Hauptarten des Journalings: Metadata Journaling und Full Journaling (data journaling). Bei Metadata Journaling

Nach einem Crash ermöglicht das Journal eine schnelle Rekonstruktion des Dateisystems durch Wiederabspielen der journalisierten Transaktionen.

Zu bekannten Journaling-Dateisystemen gehören ext3, ext4, XFS, JFS und ReiserFS. Windows NTFS nutzt ebenfalls Journaling-Mechanismen. ZFS

werden
nur
Metadaten
notiert;
bei
Full
Journaling
werden
auch
Dateiinhalte
journalisiert.
Die
Mehrheit
der
Linux-Dateisysteme
verwendet
Metadata
Journaling;
ext4
unterstützt
verschiedene
Modi
wie
data=ordered,
data=writeback
und
data=journal.
Andere
Systeme
bieten
unterschiedliche
Varianten
des
Journalings
und
Optimierungen
für
Rechenleistung
und
Konsistenz.
Die
Wiederherstellung
ist
oft
schneller
als
eine
vollständige
Konsistenzprüfung.
Die
zusätzliche
Schreiblast
kann
jedoch
die
Leistung
beeinflussen;
moderne
Systeme
verwenden
Optimierungen
wie
Barrieren
oder
speicherinterne
Journaling-Puffer,
um
Konsistenz
bei
möglichst
geringer
Latenz
sicherzustellen.
und
Btrfs
verwenden
Copy-on-Write-Ansätze,
die
ähnliche
Zuverlässigkeitsziele
verfolgen,
sich
aber
technisch
vom
klassischen
Journaling
unterscheiden.
Journaling
ist
damit
ein
zentrales
Merkmal
moderner
Dateisysteme
zur
Verbesserung
der
Ausfallsicherheit
bei
plötzlichen
Unterbrechungen.