Temporal database

As a temporal database database systems are called that offer a support of at least some aspects of the storage time-related data that goes beyond the support of time-related data types and thus a temporal data management are particularly suitable.

In addition to temporal databases, there is also the spatio -temporal databases, which represent the next time also a spatial dimension, but the focus in these databases is usually on the spatial dimension.

Apart from Teradata 13:10 there is currently no commercial database system that meets the requirements of the temporal data storage peripherally maps. However, there are some designs that represent essentially extensions of relational databases. In particular, the in-process future standard SQL / Temporal, originally SQL3 or SQL as part of the SQL standard: 1999 was provided, is to combine the approaches of the currently existing designs and offer extensive support for storing temporal data. However, the standardization because of disagreement has stalled, and SQL / Temporal is not currently in the current standard (SQL: 2008) included.

Criteria

The following criteria are useful for the classification of temporal databases:

  • Time dimension Here and transaction time ( time at which there is a data change in the database) is ( period in which an object in the modeled reality has the condition described ) between validity period distinguished. Are both valid and transaction time relevant, it is called bitemporal.
  • Used data type for time stamping Here are the basic times, intervals or so-called temporal elements to distinguish ( a summary of any number of intervals).
  • Explicit or implicit timestamping A distinction is made whether the timestamp is implicitly extended by the database system or must be specified explicitly.
  • Tuple or attribute timestamping It is necessary to distinguish whether the time stamp for each attribute individually or for an entire row of data ( tuples) takes place.
  • Automatic temporal normalization ( Coalescing ) Some database systems lead to appropriate update operations automatically a summary of periods with matching attribute values ​​through.

Concepts of temporal databases

The following significant current concepts of temporal databases are briefly outlined. However, this list does not claim to be complete.

IXSQL

The Interval Extended Relational Model ( IXRM ) and based on it IXSQL language is an extension of SQL to provide a comprehensive support for interval data, which need not necessarily refer only to temporal intervals do. Thus, it is fundamentally different from the others presented here, concepts of temporal databases. IXSQL is to SQL92 upward compatible.

The most important extensions to SQL92 are in addition to the interval data types, operations FOLD ( " folding " ) or UNFOLD ( " unfolding "). This UNFOLD causes a decomposition of an interval in a lot of single point values ​​. FOLD is a converse operation - there is a lot of individual point data compiled into intervals - and thus causes a temporal normalization for the affected attributes.

TSQL2

The language TSQL2 was developed by a large group of researchers and is based on the bitemporal Conceptual Data Model ( BCDM ). Also TSQL2 is upward compatible with SQL92.

The BCDM bitemporal elements used for time stamping, that is, all tuples with the same attribute values ​​can always be combined into a single line, as the bitemporal timestamp can take the union of all relevant time intervals, respectively. In addition, the time stamping is done implicitly, that is, at the time stamps are not "normal " attributes that are directly influenced. Another special feature of the BCDM is that this summary of tuples with identical attribute values ​​( Coalescing ) is automatic.

In order to be able to map temporally anchored intervals, exists in TSQL2 the data type PERIOD. In conjunction with this type of additional special comparison operators are introduced (MEETS, Precedes, OVERLAPS and CONTAINS ).

ATSQL2

In contrast to the other concepts presented here is ATSQL2 not supported on a specific database system, but also acts as a front end of a conventional relational database system. In this example, Oracle and Sybase are supported.

The language syntax used by ATSQL2 is based on TSQL2. Each database statement is converted into one or more SQL92 statements.

Another major difference from ATSQL2 to the other concepts presented is that it TimeDB already a working prototype are (see links).

764908
de