Säuerl, P. (2018). Datenzitierbarkeit bei Schemaevolution in relationalen Datenbanken [Diploma Thesis, Technische Universität Wien]. reposiTUm. https://doi.org/10.34726/hss.2018.41769
Viele Bereiche in der Forschung und Wirtschaft benötigen Daten als Grundlage für Experimente und Analysen. Die Reproduzierbarkeit dieser Experimente ist ein wichtiger Teil in der Wissenschaft und kann auch in der Wirtschaft eine große Rolle spielen aufgrund rechtlicher Natur oder Rechenschaftspflicht bei Entscheidungen. Generell muss man davon ausgehen, dass die zugrunde liegenden Daten für diese Experimente, ebenfalls auch das den Daten zugrunde liegende Schema, Änderungen unterliegen. Dies macht die korrekte Reproduktion von Daten eine nicht triviale Aufgabe. Wege, Daten die bereits abgefragt wurden korrekt zu reproduzieren, sind bereits entwickelt wurden und sind bekannt als Datenzitierbarkeit. Der Prozess der Schema Änderung und das Migrieren der Abfragen zwischen verschiedenen Schema Versionen ist bekannt als Schema Evolution. Systeme für diese beiden Bereiche wurden bereits entwickelt, jedoch kein System, welches beides unterstützt. Diese Diplomarbeit kombiniert Systeme aus den beiden Bereichen und beantwortet, welche Design-Entscheidungen man bei der Kombination treffen muss und wie diese die Abfragezeit und Speicherplatzanforderungen beeinflussen. Zusätzlich werden noch unterschiedliche Ansätze für die Daten Historisierung implementiert, welche hinsichtlich ihrer Speicherplatzanforderungen sowie der Zeit für Abfragen evaluiert werden. Darauf aufbauend erstellen wir Richtlinien, welche Ansätze in welchen Situationen verwendet werden sollen und beschreiben verschiedene Bereiche für Optimierungen. Die wichtigsten Beiträge dieser Diplomarbeit sind die entwickelten Locking Strategien, die sich aus der Kombination den Anforderungen für Datenzitierungssystemen und Schema Evolution ergeben, sowie das Umschreiben von Abfragen für die implementierten Datenhistorisiserungsansätze, ein skizziertes System für Datenbanken mit Millionen von Einträgen, und Verwendungsrichtlinien für diese Systeme.
de
Many areas in science and businesses rely heavily on data for their experiments and analyses. Reproducibility of those experiments is an important part of science and can be important in businesses too, due to legal or accountability issues. In general, the underlying data for those experiments and the schema it is stored in, are subject to change, making correct dataset reproduction a non trivial task. Ways to correctly reproduce a once created set of data have been developed and those ways are generally known as making data citeable. The process of changing the schema and migrating queries between different schemata versions is known as schema evolution. Systems that solve data citation, as well as schema evolvable systems for relational database management systems (RDBMS), have been designed, but none for both. This thesis is going to answer how those systems can be combined, which design decisions have to be taken when combining those systems and how they impact query performance and storage size. To provide these answers, we first take a look at systems that solve data citation and systems that solve schema evolution in RBDMS. We design and implement a system based on existing solutions with different data historization approaches. Afterwards, we evaluate those approaches with respect to their storage requirements and query performance. Based on our evaluation, we conclude usage guidelines for different scenarios and discuss potential optimizations. The main contributions of this thesis are the developed locking mechanisms that result from combining requirements of schema evolvable systems with those of data citeable systems, as well as the query rewriting techniques for the different implemented data historization approaches, an outlined additional outlined system for databases with millions of rows, and the usage guidelines inferred from our evaluation results.