Früher war alles ganz einfach auf der IBM i.
Die DB2 war die einzige Datenbank, die man auf der Plattform nutzen konnte und ist auch heute noch die einzige Datenbank, die fest mit einem Betriebssystem integriert ist, was, wie wir alle wissen, sehr viele Vorteile bietet und letzten Endes zu dem einzigartigen Erfolg dieser Plattform beigetragen hat.
Doch die Zeiten ändern sich. Viele Anwendungen, die heute von den Anwendern benötigt werden, laufen nicht mit der IBM i DB2 zusammen und benötigen andere Datenbanksysteme.
Diese wurden in den letzten Jahrzehnten nach und nach auf unterschiedlichen Betriebssystemen rund um die IBM i herum in den Rechenzentren und Serverräumen der IBM i Anwender aufgebaut und dort laufen sie.
Open Source als Türöffner
Durch die Öffnung von IBM i für die einfache Portierung von AIX basierten Open Source Projekten via PASE (Portable Application Solutions Environment), welche IBM seit 2014 immer intensiver betreibt, wurden nach und nach immer mehr Frameworks direkt unter IBM PASE for i verfügbar und somit wurde es möglich verschiedene Workloads – also Anwendungsfälle wieder auf die IBM i zurück zu holen.
Dummerweise genügt es aber nicht, wenn man „nur“ Node.js, Python, LUA oder Perl verfügbar macht, denn auch diese Frameworks müssen irgendwo ihre Daten speichern.
Und das tun sie i.d.R nicht in einer IBM DB2.
Also hat IBM angefangen über den Open Source PASE Weg erste Datenbanken zu portieren, wie z.B. SQLite.
Mittlerweile haben wir gleich mehrere zur Auswahl und die Möglichkeiten Workload in Form von fertigen Open Source Lösungen auf die IBM PASE for i Plattform zu portieren, wachsen mit jeder weiteren Datenbank, die dazu kommt.
Relationale Alternativen
Neben SQLite wird mittlerweile Postgre SQL in der Version 12.2, sowie MariaDB (die freie Abspaltung von MySQL) in Version 10.3 unterstützt. Dies ist besonders wichtig, da viele Open Source Projekte Postgre oder MariaDB als Datenbank unterstützen und somit relativ leicht portierbar sind. Als Beispiel sei Wiki.js genannt, welches auf Basis von Node.js läuft und u.a. diese beiden Datenbanken unterstützt.
In Memory Key Value Alternativen
Eine besondere Form des Datenspeichers, der nun ebenfalls direkt unter IBM PASE for i läuft ist Redis. Bei Redis handelt es sich um eine sog. In Memory Datenbank. D.h. alle Daten werden im Hauptspeicher vorgehalten und stehen damit besonders schnell zur Verfügung. Genau aus diesem Grund hat es sich auch so stark verbreitet und findet in unzähligen Projekten (nicht nur Open Source) seine Anwendung.
Wenn Sie Fragen zu diesen spannenden Themen oder anderen Open Source Tools auf IBM i haben oder gar ein Projekt auf die IBM i portieren möchten bzw. Datenbankkonsolidierung betreiben möchten, dann schreiben Sie mir oder rufen mich einfach an.
Gerne stehen mein Team und ich Ihnen mit unserer Erfahrung zur Seite.