Forced Writes (Synchrones Schreiben)

<< FLOAT | IBExpert Glossar | Fremdschlüssel >>

Forced Writes (Synchrones Schreiben)

Dieses Feature ermöglicht synchrones Schreiben auf der Festplatte. Wenn die Forced Writes-Option aktiviert ist, werden alle Daten sofort auf der Festplatte gespeichert, d.h. bei jedem Commit wird alles auf die Festplatte und dann in die TIP (=Transactions Inventory Page) geschrieben.

Ohne Forced Writes ist die Prozess ein ganz wenig schneller, aber wenn auf Windowsplattformen gearbeitet wird, entscheidet Windows, was auf der Festplatte gespeichert werden soll und wo und wann, und Datenseiten werden immer zulezt gespeichert, d.h. die TIP-Änderungen werden zuerst geschrieben und dann die Datensätze - was zu Ungereimtheiten führen könnte, insbesondere wenn der Rechner abstürzt, da die TIP glaubt, dass alle Datensätze bereits gespeichert sind, sie aber eventuell noch nicht vollständig auf der Festplatte geschrieben sind. Der Windows Cache beginnt einfach am Anfang und arbeitet sich bis zum Ende durch.

Der Firebird Forced Writes Mechanismus schreibt die Daten wo er sie braucht, zum Beispiel, wenn er eine neue Datenseite für das Schreiben der Daten öffnen muss, wird im Inhaltsverzeichnis einen Vermerk, dass diese Seite Daten für die entsprechende Tabelle beinhaltet, eingefügt. Der Server fügt auch einen Vermerk in die primäre Zeigerseiten für die Tabelle ein. Schließlich, nachdem alles erfolgreich committet wurde, wird Information über was gemacht und was committet wurde in die TIP eingetragen.

Der Einsatz von Forced Writes wird daher immer empfohlen und diese Eigenschaft sollte nie, wenn nicht unbedingt notwendig, deaktivert werden.

Siehe auch:
deutschsprachig:
Datenbanksweep
englischsprachig:
Disabling forced writes
Forced writes - cuts both ways
Structure of a header page
Firebird 2.1 Release Notes: Forced Writes on Linux
Firebird Database Housekeeping Utility: Database write mode
Firebird Internals

zurück zum Seitenanfang
<< FLOAT | IBExpert Glossar | Fremdschlüssel >>