Skip to content
Snippets Groups Projects
ADR-sqlite.asciidoc 1.93 KiB

ADR - Name

Entscheidung

Statt SQL für eine PostgreSQL-Datenbank zu erzeugen, wird direkt eine SQLite-Datenbank generiert.

Optional soll die Generierung des SQL-Scripts möglich bleiben.

Status

Proposed

Kontext

Bisher wird ein Script generiert, welches SQL für eine PostgreSQL-Datenbank erzeugt. Dies zieht folgende Probleme nach sich:

  1. das SQL-Script wird durch die serialisierte und textuelle Darstellung der Daten sehr groß, insbesondere, weil jedes Jahr mehr und mehr AIPs zu berücksichtigen sind.

  2. es muss eine extra PostgreSQL-Datenbank aufgesetzt werden

  3. das SQL-Script ist von der Datenbank entkoppelt. Ob das Script tatsächlich funktioniert, kann erst bei Einspielen des Scripts in die Datenbank geprüft werden

Mit der Nutzung von SQLite hätte man zum einen sofort eine lauffähige Datenbank, die nicht erst administriert werden muss. Zum anderen erspart man sich den Zwischenschritt der SQL-Script Generierung.

Konsequenzen

  1. Durch die direkte Verwendung von SQLite entfällt der Erhalt der Eigenschaft "direkt menschenlesbar". Durch die optionale Möglichkeit der Generierung des SQL-Scriptes wird dieser Nachteil abgefedert.

  2. Auf SQLite können nicht ohne weiteres mehrere Programme von unterschiedlichen Rechnern zugreifen.

  3. Berücksichtigt werden sollte, dass es uU. möglich ist, dass eine SQLite-Datenbank-Datei nur mit bestimmten Versionen lesbar ist. Die Nutzbarkeit der SQLite-Datenbank muss durch regelmäßige Tests sichergestellt werden.

  4. Durch die direkte Verwendung von SQLite könnte man die Erzeugung der Exit-Datenbank einfacher automatisieren.