Datenkonsistenz bedeutet, dass die Datenwerte für alle Instanzen einer Anwendung gleich sind. Diese Daten gehören zusammen und beschreiben einen bestimmten Vorgang zu einem bestimmten Zeitpunkt, d.h. die Daten werden während der Verarbeitung nicht verändert oder Überweisungen.
Synchronisation und andere Schutzmaßnahmen helfen, die Konsistenz der Daten während der mehrstufigen Verarbeitung sicherzustellen. Die Datenkonsistenz ist entscheidend für das Funktionieren von Programmen, Anwendungen, Systemen und Datenbanken. Sperren sind Maßnahmen, die verhindern, dass Daten von zwei Anwendungen gleichzeitig verändert werden, und die korrekte Verarbeitungsreihenfolge sicherstellen.
Datenkonsistenz kann verschiedene Dimensionen haben:
- Zeitpunktkonsistenz bedeutet, dass alle zugehörigen Daten zu jedem Zeitpunkt gleich sind. Im Falle eines Stromausfalls ist es beispielsweise wichtig, alle Daten wie im Moment des Ausfalls wiederherzustellen.
- Transaktionskonsistenz existiert nur, bevor die angegebene Menge von Transaktionen ausgeführt wurde und nachdem sie abgeschlossen sind. Während der Verarbeitung sind die Daten möglicherweise nicht konsistent.
- Anwendungskonsistenz kann Daten aus verschiedenen Quellen wie Datenbanken und einzelnen Dateien umfassen. Eine Anwendung umfasst viele verschiedene Transaktionen, und daher sind die Daten nur vor und nach Abschluss aller Transaktionen vollständig konsistent.
Die Kontrolle gleichzeitiger Vorgänge und die Fähigkeit, unvollständige Transaktionen zu verarbeiten, sind unerlässlich, um die Datenkonsistenz bei Stromausfällen aufrechtzuerhalten und wiederherzustellen.