Temporale Datenbank

Temporale Datenbank

Als temporale Datenbank werden Datenbanksysteme bezeichnet, die eine Unterstützung zumindest einiger Aspekte der Speicherung zeitbezogener Daten bieten, die über die Unterstützung zeitbezogener Datentypen hinausgeht[1] und die somit für eine temporale Datenhaltung besonders geeignet sind.

Neben den temporalen Datenbanken gibt es auch noch die spatio-temporalen Datenbanken, die neben der zeitlichen auch noch eine räumliche Dimension abbilden, der Schwerpunkt bei diesen Datenbanken liegt aber im Regelfall auf der räumlichen Dimension.

Abgesehen von Teradata 13.10 existiert derzeit noch kein kommerzielles Datenbanksystem, das die Anforderungen der temporalen Datenhaltung umfänglich abbildet. Es existieren jedoch einige Entwürfe, die im Wesentlichen Erweiterungen relationaler Datenbanken darstellen. Insbesondere der in Arbeit befindliche zukünftige Standard SQL/Temporal, der ursprünglich als Teil des SQL-Standards SQL3 bzw. SQL:1999 vorgesehen war, soll die Ansätze der derzeit existierenden Entwürfe vereinen und eine umfassende Unterstützung zur Speicherung temporaler Daten bieten[2]. Allerdings ist die Standardisierung aufgrund von Meinungsverschiedenheiten ins Stocken geraten, und SQL/Temporal ist auch nicht im derzeit aktuellen Standard (SQL:2008) enthalten.

Inhaltsverzeichnis

Kriterien

Die folgenden Kriterien sind zur Einordnung temporaler Datenbanken hilfreich:

  • Zeitdimension
    Dabei wird zwischen Gültigkeitszeit (Zeitraum, in dem ein Objekt in der modellierten Realität den beschriebenen Zustand aufweist) und Transaktionszeit (Zeitpunkt, zu dem eine Datenänderung in der Datenbank erfolgt) unterschieden. Sind sowohl Gültigkeits- als auch Transaktionszeit relevant, spricht man von bitemporal.
  • Verwendeter Datentyp zur Zeitstempelung
    Hier sind elementare Zeitangaben, Intervalle oder sogenannte temporale Elemente (eine Zusammenfassung beliebig vieler Intervalle) zu unterscheiden.
  • Explizite oder implizite Zeitstempelung
    Hierbei wird unterschieden, ob der Zeitstempel implizit vom Datenbanksystem ergänzt wird oder explizit angegeben werden muss.
  • Tupel- oder Attribut-Zeitstempelung
    Es ist zu unterscheiden, ob die Zeitstempelung für jedes Attribut einzeln oder für eine gesamte Datenzeile (Tupel) erfolgt.
  • Automatische temporale Normalisierung (Coalescing)
    Manche Datenbanksysteme führen nach entsprechenden Aktualisierungsoperationen automatisch eine Zusammenfassung von Zeiträumen mit übereinstimmenden Attributwerten durch.

Konzepte temporaler Datenbanken

Im folgenden werden wesentliche derzeitige Konzepte temporaler Datenbanken kurz dargelegt. Diese Aufstellung erhebt aber keinen Anspruch auf Vollständigkeit.

IXSQL

Zeitdimension Gültigkeitszeit
Datentyp zur Zeitstempelung Intervall
Zeitstempelung explizit/implizit explizit
Tupel- oder Attributzeitstempelung Tupel
Automatisches Coalescing Nein

Das Interval Extended Relational Model (IXRM) und die darauf basierende Sprache IXSQL ist eine Erweiterung von SQL um eine umfassende Unterstützung von Intervalldaten, die sich nicht notwendigerweise ausschließlich auf temporale Intervalle beziehen müssen. Damit unterscheidet es sich grundlegend von den anderen hier vorgestellten Konzepten temporaler Datenbanken. IXSQL ist dabei aufwärtskompatibel zu SQL92.

Die wichtigsten Erweiterungen gegenüber SQL92 sind neben dem Intervall-Datentypen die Operationen FOLD („Zusammenfalten“) bzw. UNFOLD („Auffalten“). Dabei bewirkt UNFOLD eine Zerlegung eines Intervalls in eine Menge einzelner Punktwerte. FOLD ist die gegenteilige Operation - dabei wird eine Menge einzelner Punktdaten wieder zu Intervallen zusammengefasst - und bewirkt somit eine temporale Normalisierung für die betroffenen Attribute.

TSQL2

Zeitdimension bitemporal
Datentyp zur Zeitstempelung Temporales Element
Zeitstempelung explizit/implizit implizit
Tupel- oder Attributzeitstempelung Tupel
Automatisches Coalescing Ja

Die Sprache TSQL2 wurde von einer größeren Gruppe von Forschern entwickelt und basiert auf dem Bitemporal Conceptual Data Model (BCDM). Auch TSQL2 ist aufwärtskompatibel zu SQL92.

Das BCDM verwendet bitemporale Elemente zur Zeitstempelung, d. h., alle Tupel mit gleichen Attributwerten können immer zu einer einzigen Zeile zusammengefasst werden, da der bitemporale Zeitstempel die Vereinigungsmenge aller relevanten Zeitintervalle jeweils aufnehmen kann. Außerdem erfolgt die Zeitstempelung implizit, d. h., bei den Zeitstempeln handelt es sich um keine „normalen“ Attribute, die direkt beeinflussbar sind. Ein weiteres besonderes Merkmal des BCDM ist, dass diese Zusammenfassung von Tupeln mit gleichartigen Attributwerten (Coalescing) automatisch erfolgt.

Um auch zeitlich verankerte Intervalle abbilden zu können, existiert in TSQL2 der Datentyp PERIOD. In Verbindung mit diesem Typ werden auch zusätzliche spezielle Vergleichsoperatoren eingeführt (MEETS, PRECEDES, OVERLAPS und CONTAINS).

ATSQL2

Zeitdimension bitemporal
Datentyp zur Zeitstempelung Intervall
Zeitstempelung explizit/implizit explizit
Tupel- oder Attributzeitstempelung Tupel
Automatisches Coalescing Nein

Im Unterschied zu den anderen hier vorgestellten Konzepten stützt sich ATSQL2 nicht auf ein spezielles Datenbanksystem ab, sondern fungiert als Frontend eines herkömmlichen relationalen Datenbanksystems. Dabei werden beispielsweise Oracle und Sybase unterstützt.

Die von ATSQL2 verwendete Sprachsyntax ist an TSQL2 angelehnt. Jede Datenbank-Anweisung wird dabei in eine oder mehrere SQL92-Anweisungen umgewandelt.

Ein weiterer wesentlicher Unterschied von ATSQL2 zu den anderen vorgestellten Konzepten ist, dass es mit TimeDB bereits einen funktionsfähigen Prototypen gibt (siehe Weblinks).

Siehe auch

Einzelnachweise

  1. Consensus Glossary of Temporal Database Concepts
  2. Snodgrass, Böhlen, Jensen, Steiner: Transitioning Temporal Support in TSQL2 to SQL3, 1998

Literatur

  • Thomas Myrach: Temporale Datenbanken in betrieblichen Informationssystemen; Teubner Verlag; Wiesbaden 2005; ISBN 3-519-00442-9

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем написать реферат

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Temporale Daten — Unter temporaler Datenhaltung (auch Historisierung genannt) versteht man in der Informationstechnik das Festhalten der zeitlichen Entwicklung der Daten bei Speicherung in einer Datenbank. Häufig ist es ausreichend, in einer Datenbank nur den… …   Deutsch Wikipedia

  • Temporale Datenhaltung — Unter temporaler Datenhaltung (auch Historisierung genannt) versteht man in der Informationstechnik das Festhalten der zeitlichen Entwicklung der Daten bei Speicherung in einer Datenbank. Häufig ist es ausreichend, in einer Datenbank nur den… …   Deutsch Wikipedia

  • Gültigkeitszeit — Unter temporaler Datenhaltung (auch Historisierung genannt) versteht man in der Informationstechnik das Festhalten der zeitlichen Entwicklung der Daten bei Speicherung in einer Datenbank. Häufig ist es ausreichend, in einer Datenbank nur den… …   Deutsch Wikipedia

  • Transaktionszeit — Unter temporaler Datenhaltung (auch Historisierung genannt) versteht man in der Informationstechnik das Festhalten der zeitlichen Entwicklung der Daten bei Speicherung in einer Datenbank. Häufig ist es ausreichend, in einer Datenbank nur den… …   Deutsch Wikipedia

  • Temporal — (von lat. tempus „Schläfe“) bezeichnet: in der Anatomie als Lage und Richtungsbezeichnung für „schläfenwärts“ bzw. „an der Schläfe gelegen“ “) Temporal (von lat. tempus „Zeit“) bezeichnet: in der Informationstechnik im Zusammenhang mit der… …   Deutsch Wikipedia

  • Stonebraker — Michael Stonebraker (* 11. Oktober 1943 in Newburyport, Massachusetts) ist ein US amerikanischer Informatiker, der sich auf Forschung und Entwicklung von Datenbanken spezialisiert hat. Er war 25 Jahre Professor an der University of California,… …   Deutsch Wikipedia

  • Bestandsdaten — Stammdaten ist ein Begriff aus der Informatik (Datenmanagement) und der Betriebswirtschaft (betriebliche Anwendungsprogramme). Daten einer Anwendung können in Stammdaten, auch Grunddaten oder Referenzdaten (englisch master data oder core data)… …   Deutsch Wikipedia

  • Bestandsdatum — Stammdaten ist ein Begriff aus der Informatik (Datenmanagement) und der Betriebswirtschaft (betriebliche Anwendungsprogramme). Daten einer Anwendung können in Stammdaten, auch Grunddaten oder Referenzdaten (englisch master data oder core data)… …   Deutsch Wikipedia

  • Bewegungsdaten — Stammdaten ist ein Begriff aus der Informatik (Datenmanagement) und der Betriebswirtschaft (betriebliche Anwendungsprogramme). Daten einer Anwendung können in Stammdaten, auch Grunddaten oder Referenzdaten (englisch master data oder core data)… …   Deutsch Wikipedia

  • Bewegungsdatum — Stammdaten ist ein Begriff aus der Informatik (Datenmanagement) und der Betriebswirtschaft (betriebliche Anwendungsprogramme). Daten einer Anwendung können in Stammdaten, auch Grunddaten oder Referenzdaten (englisch master data oder core data)… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”