Time: | upon consultation |
Location: | APB 3043 |
Quantity: | 0V/0Ü/4P SWS |
Language: | German (English on request) |
Modules: | INF-B-510, INF-B-520, INF-B-530, INF-B-540, IST-05-KP |
Die Unterstützung von Datenbank Versionierung – also die gleichzeitige Bereitstellung mehrerer Schemaversionen für ein und den selben Datenbestand – ist ein topaktuelles Forschungsthema. Nutzer können beliebig alte Versionen einer Application weiterverwenden, während die Entwickler agile und dynamisch die aktuelle Version vorantreiben und auch schon für interessierte Nutzer zu Verfügung stellen. Da die derzeitige Best-Practice in handgeschriebenen und fehleranfälligen Lösungen besteht, wurde an unserem Lehrstuhl InVerDa entwickelt. InVerDa beruht auf einer einfachen und intuitiven Datenbank-Evolutions-Sprache, welche mächtig genug ist um automatisiert alle Schemaversionen gleichzeitig bereitzustellen. Schreiboperationen in einer Schemaversion sind in allen anderen Schemaversionen ebenfalls sichtbar. Zudem kann der Datenbankadministrator die physische Ablage der Daten dem aktuellen Workload anpassen ohne die Verfügbarkeit der einzelnen Schemaversionen zu beeinträchtigen.
Weiterführende Informationen: InVerDa-Projekt und [K. Herrmann, H. Voigt, T. Seyschab, and W. Lehner, “InVerDa – co-existing schema versions made foolproof,” ICDE, 2016]
Im Rahmen des Komplexpraktikums soll eine Benchmarkumgebung für InVerDa entwickelt werden. Dies beinhaltet drei wesentliche Arbeitsschritte:
Alle drei Arbeitsschritte sind neben dem initialen konzeptionellen Aufwand im wesentlichen Implementierungsaufgaben. Hierbei wird hauptsächlich Java verwendet (je nach Kenntnisstand und Interesse natürlich auch weitere Tools zur Erstellung der GUI u.ä.).