Ende März 2020 brachte MariaDB den Datenbankservice SkySQL heraus. SkySQL bietet alle Funktionen der MariaDB-Plattform und ist bei allen nennenswerten Cloud-Anbietern zu beziehen. Sie kann Cloud-agnostisch betrieben werden.
Eine interessante Alternative für all diejenigen, die sich nicht zu eng an einen Cloud-Anbieter binden wollen. Diese Neuerscheinung haben wir zum Anlass genommen, um MariaDB kennenzulernen.
MariaDB Corporation
MariaDB ist eine bekannte Open-Source-Datenbank. Die Community-Edition der Datenbank kann über die MariaDB Foundation bezogen werden. Im Vergleich zur MariaDB Foundation bietet die MariaDB Corporation (kommerzielle Sparte) Support und zusätzliche Funktionen für die Datenbank an und zielt darauf ab, die Datenbank „Enterprise-Ready“ anzubieten.
Diese zusätzlichen Funktionen sind ebenfalls Open Source, aber nach Aussage von MariaDB in der Regel erst die ersten 2 Jahre exklusiv den zahlenden Kunden vorbehalten. Die Community-Edition von MariaDB ist völlig kostenlos erhältlich. Seit März 2020 spielt MariaDB mit SkySQL nun auch in der Database-as-a-Service-Liga.
MariaDB findet seine Ursprünge in MySQL und wurde 2012 als eigenständiges Unternehmen gegründet. Das Unternehmen hat heute um die 300 Mitarbeiter weltweit und verdient sein Geld hauptsächlich mit Support und Subskriptionen.
MariaDB Corporation ist Software- und Serviceanbieter zugleich. Die Services sind weitläufig und reichen von der technischen Wartung, Datenbankadministration, Trainings hin zur Gestaltung und Implementierung von Datenbanklandschaften oder der Bereitstellung von Enterprise Architekten als dedizierte Ressource.
Einsatzszenarien
MariaDB wird häufig in der kostenlosen Open-Source-Variante im Modus einer relationalen Datenbank für operative Anwendungsfälle genutzt. Hier kommen die Kunden häufig aus der Oracle-Welt oder anderen proprietären Datenbanken und migrieren auf MariaDB.
Die Hauptgründe für die Migration auf MariaDB liegen analog zu den Gründen für Open Source im Allgemeinen in der Kostenerparnis, Vermeidung eines Vendor-Logins und in der Entwicklungskraft durch die Community zu finden. Viele der Anwendungsfälle sind auch gar nicht bekannt.
Aufgrund des einfachen, unverbindlichen Bezugs aus der Cloud oder per Download ist die Datenbank schnell installiert, aber auch schnell wieder deinstalliert und entsprechend weit gestreut. Unternehmen, die MariaDB als Datenbank strategisch einsetzen wollen, bekommen durch die Subskription den notwendigen Support, Qualitätssicherungen und zusätzliche Funktionen.
Kurzübersicht: MariaDB, die Datenbank
Die Datenbank an sich kann noch viel mehr als „operativ“. MariaDB ist eine „multi-purpose“ Datenbank. Also eine Datenbank, die in mehreren Szenarien unterstützen kann. Sie bietet für unterschiedliche operative und analytische Workloads spezielle Engines an oder erlaubt auch den parallelen Einsatz unterschiedlicher Engines in einem Cluster. Dabei kann der Nutzer wählen zwischen
- der relationalen Engine für den lesenden/schreibenden Zugriff,
- einer wide-column Engine für Anwendungsfälle, in den strukturierte, aber auch unstrukturierte große Datenmengen lesend/schreibend verarbeitet werden müssen,
- einem Document Store, wenn es um die Analyse unstrukturierter Daten geht,
- und der für Analysen abfrageoptimierten Column-Store-Engine.
MariaDB kann in einer massiv parallelen Architektur (MPP) betrieben werden. Jeder Knoten in der Architektur kann dabei eine andere Engine haben. Die Daten in den unterschiedlichen Engines können auch untereinander kombiniert abgefragt werden.
Für den Aufbau der Cluster-Architektur ist MaxScale eine wesentliche Komponente. MaxScale ist eine Art intelligenter Proxyserver und sitzt zwischen den Datenbankservern und dem Client.
Durch MaxScale können beispielsweise Clientanwendungen mit den Datenbankservern wie mit einer Datenbank sprechen. MaxScale nimmt dabei die Abfragen an, analysiert diese und leitet diese an die entsprechenden Knoten weiter. Auch wird durch MaxScale die einfache Skalierung des Clusters in die Breite möglich.
Meine Analysteneinschätzung:
Neben PostgreSQL und MySQL zählt MariaDB zu den bekannten relationalen Open-Source-Datenbanken. MariaDB folgt der Entwicklung, den viele Datenbankhersteller gehen, und bietet eine Datenspeicherplattform mit multiplen Engines an, mit der man unterschiedliche Anwendungsszenarien umsetzen kann.
Open-Source-Datenbanken kommen gut an, doch sehen wir bislang wenig Verbreitung dieser Datenbanken im Sinne einer zentralen Plattform für bspw. Data-Warehousing oder als Data Lake.
Vielmehr beobachten wir den Einsatz im operativen Umfeld oder aber als Datenbank zur Umsetzung von Spezialanwendungen, von Einsatzszenarien mit kleinen Datenmengen bis hin zu großen Datenmengen.
In puncto Leistungsfähigkeit haben sich die Open-Source-Datenbanken weiterentwickelt und bieten abhängig vom Einsatzszenario echte Alternativen. Ein richtiger Schritt ist die Öffnung von MariaDB in Richtung Cloud.
Zwar bieten die großen Hyperscaler wie Amazon, Google, Microsoft genug Auswahl an Datenbankservices. Es reizt aber das Konzept, die Architektur Cloud-Plattform-unabhängig aufbauen zu können.