Datenbanktechnik
Architektur der neuen Datenbank-Cluster
Ein Beispiel für diese neue Architektur ist der Cluster db12.zim.uni-due.de, der für Studierenden-Datenbanken eingerichtet wurde. Er basiert auf der Galera-Cluster-Technologie von MariaDB. MariaDB ist binärkompatibel zu MySQL und nach der Übernahme von MySQL durch Sun und später Oracle die mittlerweile populärste OpenSource-Datenbank. Das ZIM folgt damit dem Trend großer IT-Firmen, den Technologiewechsel von MySQL zu MariaDB zu vollziehen. Auch Red Hat Enterprise Linux 7 and SUSE Enterprise Linux 12 werden mittlerweile mit MariaDB anstatt MySQL ausgeliefert.
Alle zukünftigen Datenbank-Server werden wir auf der neuen Architektur mit synchroner Replikation in einem Cluster aus zwei virtuellen Servern auf getrennten Speichersystemen betreiben. Diese Systeme werden über eine zeitgemäße Ressourcen-Ausstattung verfügen, die regelmäßig dem aktuellen Bedarf angepasst wird.
Das ZIM stellt mit dieser neuen Architektur eine zuverlässige und technologisch aktuelle und zukunftssichere Plattform für künftige Datenbank-Anforderungen zur Verfügung.
Vorteile der aktuellen Architektur
Die bisherige Erfahrung mit den bereits umgestellten Systemen zeigt, dass diese stabil und performant laufen und die Systeme weisen trotz Replikations-Overhead deutlich bessere Commit-Zeiten aus als die Alt-Systeme.
Weitere Vorteile der aktuellen Architektur:
- Die Systeme sind ausschließlich aus dem Hochschulnetz zugänglich. Zugriff von außerhalb erfolgt nur via VPN oder SSH Tunnel
- Die Datensicherung geschieht nachts und wird auf dem "Replikanten" durchgeführt. Das hat den Vorteil, dass die Sicherung nicht den Server für die Anwendung belastet. Die Sicherung wird "lock row" durchgeführt, das Sperren ganzer Tabellen wie beim mysqldump gehört damit der Vergangenheit an.
- Die Datenbankversionen von 7 Tagen werden auf dem Adminserver vorgehalten und stehen ohne weitere Voraussetzungen sofort für die Rücksicherung zur Verfügung. Danach werden die Daten für max. 4 Wochen im TSM vorgehalten.
- Selbstverständlich können Statistikläufe etc. auch auf dem "Replikanten" durchgeführt werden, dies entlastet den primären Server, sodass für die Anwendung eine gleichbleibend stabile Datenbank-Performance verfügbar ist.
- Für die Zukunft ist der Einsatz des Lastverteilers MaxScale geplant, der zusätzlich zur Lastverteilung einen transparenten Failover im Fehlerfall bietet.
Dienstqualitäten
Das neue Datenbank-Konzept sieht drei Dienstqualitäten vor, die sich in der Anzahl der Datenbanken, die in einem Cluster gehosted werden und in der Anzahl der erlaubten parallelen Zugriffe unterscheiden:
- Standard-Dienstqualität: max. 250 Datenbanken pro Cluster, 100 parallele Connections
- Aktuell ein Cluster: db12.zim.uni-due.de (für Studierenden-Datenbanken)
- Erhöhte Dienstqualität: max. 25 Datenbanken pro Cluster, 150 parallele Connections (evtl. mehr Connections nach Absprache)
- Aktuell zwei Cluster:
- db4.zim.uni-due.de (Migration des Alt-Systems db64)
- db1.zim.uni-due.de (für neue produktive Datenbanken)
- Dedizierter DB-Server: max. 1 Datenbank pro Cluster, beliebig viele parallele Connections
- Aktuell ein edizierter Cluster für das UK Essen:
- db2.zim.uni-due.de
Für die Beantragung der Datenbanken wurde auch ein neues Formular entwickelt, in dem der Verwendungszweck und die Performance-Anforderungen abgefragt werden. Dies dient dem ZIM als Entscheidungshilfe für die bereitzustellende Dienstqualität.