Wann werden die Daten im Journal auf die Festplatte geschrieben?

7

(1) erwähnt Folgendes: "Bei einem Journal wird die Datei zuerst in das Journal geschrieben, und anschließend schreibt das Journal die Datei auf die Festplatte, wenn sie fertig ist. Nachdem sie erfolgreich auf die Festplatte geschrieben wurde, wird sie aus dem Journal entfernt." Durchschlag, und der Vorgang ist abgeschlossen. "

Wenn ich eine Datei erstelle, wird sie in das Journal und später auf die Festplatte geschrieben. Wenn ich eine Datei von 1 MB erstelle, werden tatsächlich 2 MB Daten auf die Festplatte geschrieben, 1 MB in das Journal und eine weitere auf die Festplatte später. Dies kann die Lebensdauer der Festplatte verkürzen. Meine Frage ist, wann die Daten im Journal auf die Festplatte übertragen werden. Wenn dies nicht sofort erfolgt, ist ein anschließendes Lesen der Daten auf der Festplatte nicht möglich. Ist der Schreibvorgang für den Benutzer auch abgeschlossen, wenn die Daten in das Journal oder auf die Festplatte geschrieben werden?

Außerdem wird erwähnt, dass aufgrund der Aufzeichnung die Defragmentierung in einigen Dateisystemen geringer ist. Wie hängt die Defragmentierung mit dem Journal zusammen?

(1) http://www.howtogeek.com/howto/33552/htg-expllains-which-linux-file-system-should-you-choose/

Praveen Sripati
quelle
Die Journale können sich an vielen Stellen in den Clustern des Laufwerks befinden (nicht sequenziell) und sind normalerweise keine verschiebbaren Dateien, sodass sie normalerweise nicht defragmentiert werden können. konnte noch beim Booten defragmentiert werden, mit einem Programm, das das tat.
Psycogeek

Antworten:

1

Wann werden die Daten im Journal auf die Festplatte übertragen?

Hängt von zwei wichtigen Dingen ab: dem verwendeten Dateisystem und dem physischen Speichergerät. XFS verwendet Schreibbarrieren . EXT3 verwendet , falls aktiviert, Schreibbarrieren . EXT4 hat standardmäßig Barrieren aktiviert . Herkömmliche Festplatten verwenden Caches . Solid-State-Laufwerke verfügen möglicherweise über einen Cache oder nicht . Letztendlich ist es eine Kombination aus Betriebssystem, Dateisystem und zugrunde liegender Hardwarearchitektur und -spezifikationen, die bestimmen, wann Daten auf dem Speichergerät gespeichert bleiben.

Ist der Schreibvorgang für den Benutzer abgeschlossen, wenn die Daten in das Journal oder auf die Festplatte geschrieben werden?

Dies hängt auch von der verwendeten Anwendung und Ihrem Betriebssystem ab. Linux hat den fsyncSystemaufruf, den Anwendungen und Dateisysteme verwenden, um zwischengespeicherte Daten auf die physischen Geräte zu übertragen. Nicht alle Anwendungen verwenden fsyncdas explizite Leeren zwischengespeicherter Daten in den Speicher. Sie können jederzeit einen sync Befehl zum manuellen Leeren von Dateisystempuffern absetzen.

Wie hängt die Defragmentierung mit dem Journal zusammen?

Die Festplattenfragmentierung beeinträchtigt die Leistung , insbesondere bei großen Dateien, deren Blöcke nicht zusammenhängend sind. Es gibt verschiedene Techniken zur Verringerung der Fragmentierung . Beispielsweise verwenden XFS und andere Dateisysteme eine Methode zum Zuweisen bei Leeren , um die Fragmentierung zu minimieren.

Dan Cruz
quelle
2
Obwohl das Poster dies als Antwort markiert hat, wird die Frage hiermit überhaupt nicht beantwortet: Der Cache verweist auf Speicherpuffer und verzögerte Schreibvorgänge und hat daher nichts mit Journaling zu tun.
Harrymc
3

Einige bessere Links für Informationen zum Journaling sind:

Journaling - Dateisystem
Anatomy of Linux Journaling - Dateisysteme

Im späteren Abschnitt werden die drei Journalstrategien erläutert: Rückschreiben, Ordnen und Daten. Wo bestellt ist normalerweise die Standardeinstellung:

Im geordneten Modus werden nur Metadaten aufgezeichnet, die Daten werden jedoch vor dem Aufzeichnen der Metadaten geschrieben. Auf diese Weise werden Daten und Dateisystem nach einer Wiederherstellung konsistent garantiert.

Wenn Sie Ihre Journalstrategie nicht auf den Datenmodus (auch Journalmodus genannt) eingestellt haben, in dem sowohl Metadaten als auch Daten aufgezeichnet werden, leidet Ihre Festplatte nicht unter der Tatsache, dass sie aufgezeichnet wird.

Das Journal selbst ist auf einem festen Bereich der Festplatte zugeordnet und trägt daher nicht zur Fragmentierung bei. Einige Dateisystemvarianten lassen es auch wachsen und schrumpfen, so dass eine gewisse Fragmentierung auftreten kann.

Auf einem Journaldateisystem führt fsck das Journal normalerweise automatisch aus. Wenn das Dateisystem ansonsten sauber ist, wird die vollständige Prüfung des Dateisystems übersprungen.

Harrymc
quelle
Tolle Lektüre, danke. Jetzt gibt es also 2-mal die Wahrscheinlichkeit, dass die Daten nicht fertiggestellt werden, das Tagebuch und das Schreiben, die hätten beendet werden können, wenn es nicht da gewesen wäre. Das Journaling wird vom Betriebssystem gesteuert und hilft, wenn das Betriebssystem ausfällt. Ein Betriebssystemfehler stellt jedoch keinen Festplattenfehler dar. Die Festplatte hätte beendet werden können, aber das Journaling war abhängig davon, was fehlgeschlagen ist. Das EXT-Dateisystem ist langsam, und viele Benutzer, die es verwenden, hatten Dateiprobleme, die nicht in die Hocke gingen, um sich selbst zu reparieren. Ich könnte mehr glauben, wenn die Theorien alle wie geplant durchgespielt hätten. Dieses Zeug könnte auf einem Server
nützlicher sein
Und jeder weiß, dass Betriebssysteme niemals ausfallen :-) und dass Festplatten und Flash-Karten in ~ 5 Jahren ausfallen. Daher sollte ein Betriebssystem-abhängiges System die Hälfte seiner Zeit damit verbringen, den Speicher aufgrund seiner Betriebssystemabhängigkeit zu vermasseln , weil es in 5 Jahren eine Festplatte oder Flash-Disk einmal reparieren wird, kurz bevor Sie die Festplatte oder Flash-Disk aus dem Verkehr ziehen müssen, weil es nicht richtig funktioniert :-)
Psycogeek
1
Vielleicht möchten Sie auch Vergleich von Dateisystemen lesen . Ich glaube, dass sowohl Linux als auch Windows derzeit einen guten Job machen und in naher Zukunft noch besser abschneiden werden. Diese Dateisysteme versuchen, vor Abstürzen zu schützen und die Sicherheit zu gewährleisten und effizient zu sein. Sie sind nicht perfekt, aber sie entwickeln sich weiter.
Harrymc
Ja, es gibt kein Zurück, brauchen Sie mehr als 4 Gig-Dateien und 5000-Terrabyte-Laufwerke. den Rest können sie behalten, die meisten Dinge, die sie hinzufügen "beeindrucken mich nicht sehr", ich betreibe keinen Server (noch). Die Verschlüsselung kann auf 50 Arten erfolgen, wenn ich etwas zu verbergen hatte.
Psycogeek
0

Es gibt keinen Hinweis darauf, dass die Lebensdauer der Festplatte mit der Aktivitätsstufe zusammenhängt. Eine unbenutzte, aber sich drehende Festplatte hält in der Regel ungefähr so ​​lange wie eine stark beanspruchte Festplatte.

In jedem Fall werden die tatsächlichen Dateidaten normalerweise nicht aufgezeichnet. Es ist nicht nötig. Normalerweise werden nur Metadaten aufgezeichnet, die zur Aufrechterhaltung der Integrität des Dateisystems erforderlich sind.

David Schwartz
quelle
Ich finde There's no evidence that disk life is correlated with activity level.das falsch. Weitere Informationen finden Sie unter storagereview.com/guide/specCycles.html . speziell Each time the drive starts and stops a small amount of wear occurs to the heads and also to other components such as the spindle motor. For this reason, hard drives are given a specification for the minimum number of start/stop cycles they are designed to handle during their service life..
Dan Cruz
Nur Metadaten. . . Ein Dateisystem mit einem logischen Journal wird nach einem Absturz immer noch schnell wiederhergestellt, kann jedoch dazu führen, dass nicht gespeicherte Dateidaten und aufgezeichnete Metadaten nicht mehr miteinander synchronisiert sind, was zu einer Beschädigung der Daten führt. secure.wikimedia.org/wikipedia/en/wiki/Journaling_file_system In einem Nur-Metadaten-Journal würde Schritt 3 nicht protokolliert. Wenn Schritt 3 nicht ausgeführt wurde, die Schritte 1 und 2 jedoch während der Wiederherstellung wiederholt werden, wird die Datei mit dem Papierkorb versehen. Das Ganze passt nicht hierher
Psycogeek