Not logged in.

Contribution Details

Type Bachelor's Thesis
Scope Discipline-based scholarship
Title Temporal Integrity Constraints in Databases With Ongoing Timestamps
Organization Unit
Authors
  • Jasmin Ebner
Supervisors
  • Michael Hanspeter Böhlen
  • Yvonne Mülle
Language
  • English
Institution University of Zurich
Faculty Faculty of Business, Economics and Informatics
Date 2016
Abstract Text Temporal database systems include time varying data. Like that, one has the ability to record when a tuple is supposed to be valid. This is necessary in many real-world use cases. An example is an insurance company which wants to know, when a customer is insured and under what conditions. As it is often not clear, how long a customer relation might finally last, it can be desirable to be able to store that the insurance contract is valid until NOW. In this case, ongoing timestamps are used. Database systems in general provide support for the two integrity constraints primary key and foreign key. These constraints can be adapted to temporal database systems. Then the constraints must be fulfilled independently at every point in time. When working with temporal database systems that include ongoing timestamps, the constraints cannot only be violated when a relation is modified, this includes insertion, update and deletion of tuples, but also when time advances. We call those constraints Ongoing Primary Key and Ongoing Foreign Key. As none of the existing database systems currently supports temporal integrity constraints with ongoing timestamps, the objective of this thesis is to integrate these constraints into the kernel of the widely used DBS PostgreSQL. In this report the ongoing integrity constraints are defined, the implementation approach is explained and an overall evaluation of the solution is made.
Zusammenfassung In temporalen Datenbanksystemen hat man die Möglichkeit, anzugeben, wann ein Tupel gültig ist. In vielen Anwendungen im täglichen Leben ist das nötig. Beispielsweise in einer Versicherungsgesellschaft, welche wissen möchte, zu welcher Zeit und mit welchem Angebot ein Kunde versichert ist. Oftmals ist dabei nicht klar, wie lange der Kunde schlussendlich bei der Versicherung bleibt. Daher kann es wünschenswert sein, im Gültigkeitsbereich anzugeben, dass das Tupel bis zum aktuellen Zeitpunkt gültig sein soll. Der Zeitpunkt passt sich dabei fortlaufend an die aktuelle Zeit an. In diesem Fall arbeitet das Datenbanksystem mit sogenannten ongoing, also fortlaufenden, Zeitstempeln. Jedes grössere Datenbanksystem implementiert die Integritätsbedingungen Primärschlüssel und Fremdschlüssel. Wenn man diese Bedingungen an temporale Datenbanken anpassen will, muss die Bedingung zu jedem Zeitpunkt an dem das Tupel gültig ist, erfüllt sein. Braucht man zusätzlich die oben beschriebenen fortlaufenden Zeitstempel, kann eine Verletzung der Bedingung nicht nur dann erfolgen, wenn man die Datenbank modifiziert, sondern auch wenn die Zeit voranschreitet. Man spricht in diesem Fall von fortlaufenden Primär- und Fremdschlüsseln. Da zur Zeit keines der Datenbanksysteme Support für diese fortlaufenden temporalen Bedingungen anbietet, ist das Ziel dieser Arbeit, den PostgreSQL Kernel zu erweitern, so dass die Integritätsschlüssel als Bedingungen auf einer Relation gesetzt werden können. Dieser Report definiert die beiden Schlüssel, zudem dokumentiert er die Implementation und gibt eine Auswertung der Lösung.
PDF File Download
Export BibTeX