Skip to main content
main-content

Über dieses Buch

Aufgabe des Datenbank-Entwurfs ist es, nicht nur die statische Struktur, sondern auch das dynamische Verhalten eines Datenbanksystems zu spezifizieren. Um festzulegen, welche Folgen von Datenbankzuständen zulässig sind, gibt man dynamische Integritätsbedingungen an. Komplementär dazu bestimmen Transaktionen als Grundbausteine von Anwendungsprogrammen die ausführbaren Zustandsfolgen. Diese Monographie stellt zwei Ansätze zur Überwachung der dynamischen Integrität von Datenbanken vor. Es werden theoretische und algorithmische Grundlagen sowie die beim Datenbank-Entwurf erforderlichen Vorbereitungen behandelt. Die Verfahren werden anhand eines durchlaufenden Standardbeispiels demonstriert. Spezifiziert werden Integritätsbedingungen durch Formeln einer temporalen Logik und Transaktionen durch Vor-/Nachbedingungen; die Semantik dieser Kalküle wird im Buch eingeführt. Aus temporalen Formeln lassen sich Transitionsgraphen konstruieren, deren Pfade den zulässigen Zustandsfolgen entsprechen. Daher dienen die Graphen einerseits als Ablaufsteuerung eines universellen Monitors, der die Analyse von Zustandsfolgen auf zustandslokale Prüfungen zurückführt. Andererseits kann man anhand der Graphen Integritätsbedingungen systematisch in Vor-/Nachbedingungen von Transaktionen transformieren, so daß jede ausführbare Zustandsfolge zulässig wird. Das letztere Vorgehen bereitet eine effiziente transaktionsangepaßte Überwachung vor und führt zu einer Spezifikation von Datenbankverhalten durch schrittweise Verfeinerung.

Inhaltsverzeichnis

Frontmatter

1. Einführung

Zusammenfassung
Der Begriff Integrität im Sinne von „semantischer Integrität“ oder auch „logischer Korrektheit“ einer Datenbank bezeichnet das Problem, ob die jeweilige Anwendungswelt angemessen, d.h. entsprechend ihrer realen Semantik, in der Datenbank modelliert wird. Insbesondere sollten „zulässige“ Datenbank-Inhalte nur sinnvolle Anwendungssituationen repräsentieren; dabei umfaßt das Attribut „sinnvoll“ ein Spektrum, welches von Tatsachen der Realität bis hin zu organisatorischen, rechtlichen oder politischen Regeln reicht. Um die (technisch) möglichen Inhalte einer Datenbank auf zulässige einzuschränken, stellt man Integritätsbedingungen auf, die während des Betriebs der Datenbank überwacht werden müssen. Für die Angestellten einer Firma kommen z.B. folgende Bedingungen in Frage:
  • Kein Geburtsdatum liegt vor 1889 (Realität, jedenfalls im Jahre 1989).
  • Keine Personalnummer kommt doppelt vor (organisatorische Regel).
  • Nur Mütter oder Väter erhalten Kindergeld (rechtliche Regel).
  • Niemand wird als Manager neu eingestellt (Unternehmenspolitische Regel).
Udo W. Lipeck

2. Ein Beispielschema

Zusammenfassung
Zur Illustration und Anwendung als Datenbankschema soll in den späteren Kapiteln durchgängig das gleiche Beispiel benutzt werden. Um die Entwicklung theoretischer Grundlagen nicht durch Erklärungen zum Beispielgegenstand zu unterbrechen, und um Verweise zu vereinfachen, wird das Schema, genauer seine erste formale Spezifikation im konzeptionellen Entwurf, in diesem Kapitel komplett präsentiert. Die formalen Teile sind überwiegend verbal kommentiert, so daß der Leser bis zur späteren exakten Definition bereits ein vorläufiges Verständnis und insbesondere einen Gesamteindruck gewinnen kann.
Udo W. Lipeck

3. Dynamische Integritätsbedingungen

Zusammenfassung
Um die Zulässigkeit von Zustandsfolgen formal zu spezifizieren, setzen wir temporale Logik ein: Dynamische Integritätsbedingungen werden durch temporale Formeln ausgedrückt.
Udo W. Lipeck

4. Universelle Integritätsüberwachung mit Transitionsgraphen

Zusammenfassung
In diesem Kapitel stellen wir theoretische und algorithmische Grundlagen einer universellen Integritätsüberwachung vor.
Udo W. Lipeck

5. Integritätsüberwachung durch Transaktionen

Zusammenfassung
Auch mit den bisher an Beispielen diskutierten Optimierungen bleibt es Aufgabe des universellen Integritätsmonitors, entsprechend den Transitionsgraphen nach jeder Zustandsänderung für alle aktuellen (unabhängigen) Objektkombinationen Prüfungen der Kanteninschriften vorzunehmen. Diesen erheblichen Aufwand kann man nur verringern, wenn man außer dem Ergebniszustand als ganzes sogar die betroffenen Objekte und die Art der Effekte (z.B. Einfügung oder Löschung) kennt. Dann erübrigen sich häufig einige Prüfungen, weil Teilbedingungen unverändert gültig oder ungültig bleiben.
Udo W. Lipeck

6. Ausblick

Zusammenfassung
Im Vordergrund dieses Buches standen Verfahren zur Überwachung der dynamischen Integrität von Datenbanken: Aus Integritätsbedingungen, die in temporaler Logik formuliert sind, lassen sich Transitionsgraphen konstruieren. Diese dienen als Ablaufsteuerung für einen Integritätsmonitor, der eine schrittweise entstehende Zustands- folge auf Zulässigkeit bzgl. der Integritätsbedingungen prüft. Abhängig davon, wie weit die Graphen reduziert sind, werden nur Folgen akzeptiert, die mindestens bis zum aktuellen Zustand vorläufig zulässig und höchstens in einer zukünftigen Fortsetzung potentiell zulässig sind. Schließlich kann das schrittweise Durchlaufen von Transitionsgraphen auch in die Vor- und Nachbedingungen von Transaktionen transformiert werden, so daß jede ausführbare Zustandsfolge bereits zulässig wird. Durch Vereinfachung der erhaltenen Spezifikationen wird eine effiziente Integritätsüberwachung vorbereitet, in der Prüfungen jeweils an die Art der Änderung und an die betroffenen Objekte angepaßt sind.
Udo W. Lipeck

Backmatter

Weitere Informationen