MariaDB ist ein freies, relationalesOpen-Source-Datenbankmanagementsystem, das durch eine Abspaltung (Fork) aus MySQL entstanden ist. Das Projekt wurde von MySQLs früherem Hauptentwickler Michael Widenius initiiert, der auch die Storage-EngineAria entwickelte, auf welcher MariaDB ursprünglich aufbaute (die Software-Schicht, welche die Basisfunktionalität der Datenbank enthält, d. h. das Erstellen, Lesen, Ändern, Löschen von Daten).
Da Oracle die Markenrechte an MySQL hält, mussten neue Namen für das Datenbanksystem und dessen Storage-Engines gefunden werden.[11] Der Name MariaDB geht auf Widenius’ jüngere Tochter Maria zurück, wie schon MySQL auf seine ältere Tochter My.[12]
Die MariaDB Enterprise Version richtet sich an Kunden mit unternehmenskritischen Anwendungen. Diese ist für eine hoch leistungsfähige und sichere Betriebsweise vorkonfiguriert und bietet differenziertes Auditing, schnelle Backups für große Datenbanken sowie Ende-zu-Ende-Verschlüsselung für Daten auf Clustern.
Der MariaDB Community Server enthält dagegen auch in Entwicklung befindliche Funktionen.
Beide Versionen werden unter einer Open-Source-Lizenz vertrieben, wogegen bei Oracle nur die MySQL Community-Version unter einer freien GPL-Variante steht.
Selbst ohne Supportvertrag darf der MariaDB Server genutzt werden.
Er ähnelt im Funktionsumfang der MySQL Enterprise-Version, z. B. sind ein Audit- und Thread-Pooling-Plugin enthalten.
Versionsgeschichte
Ab Version 10.7 gibt es ein neues Schema für Veröffentlichungen. Für Long Term Support (LTS)-Versionen garantiert die Maria DB Foundation mindestens fünf Jahre Updates.[13] Neue LTS-Versionen erscheinen ungefähr alle zwei Jahre. Nicht-LTS-Versionen (short term maintenance release) werden quartalsweise veröffentlicht und bekommen jeweils ein Jahr Updates.
Das unten angeführte Erscheinungsdatum gibt dabei den Zeitpunkt des ersten Erscheinens wieder und nicht den der allgemeinen Verfügbarkeit (General Availability, GA), welcher einige Wochen oder Monate später lag. Da die Version 5.5 in vielen Linux-Distributionen enthalten ist, deren Wartungsende auf eine Zeit nach 2017 fällt, wurde der Unterstützungszeitraum dieser Version von der MariaDB Foundation um drei Jahre verlängert.[13] Der Versionssprung von 5.5 auf 10.0 soll dem Umstand Rechnung tragen, dass sich MariaDB ab der Version 10 funktional weiter von MySQL entfernen wird.[14]
Die MariaDB Foundation erwähnt, ins Deutsche übersetzt:[33]
MariaDB Server bleibt freie und Open-Source-Software, lizenziert unter GPLv2, unabhängig von kommerziellen Einheiten.
Prominente Nutzer
Seit Ende 2012 haben einige Linux-Distributionen MySQL durch MariaDB als Standard-Installation ersetzt, dazu gehören Fedora, CentOS, openSUSE, Slackware und Arch Linux.[34] Die Wikimedia Foundation, die unter anderem auch die Server für die Wikipedia bereitstellt, hat ihre Produktivsysteme im April 2013 auf MariaDB umgestellt.[35] Damit hat sich eine der weltweit größten Web-Plattformen von MySQL verabschiedet.[36]
Die MariaDB- und MySQL-Server sind keine monolithischen Datenbankserver wie z. B. PostgreSQL. Diese Server kann man sich als Framework für „pluggable engines“ vorstellen. Als Standard-Engine verwenden beide seit MariaDB 10.2 die identische InnoDB-Engine, auf die in der Regel auch Applikationen zurückgreifen. Der SQL-Dialekt entspricht dem „Standard-SQL“, und zwischen MySQL und MariaDB gibt es keine essenziellen Unterschiede.
Aus Sicht von Applikationen kann MySQL oft problemlos durch MariaDB ersetzt werden, da es für hergebrachte Funktionen kaum Inkompatibilitäten gibt. Die Daten-Dateien der InnoDB sind kompatibel und damit austauschbar. Für neuere MySQL-Features kann es aber sein, dass MariaDB noch kein entsprechendes Äquivalent bietet (z. B. geografische Funktionen) oder bewusst eine inkompatible Implementierung wählte (z. B. GTID und JSON).[57] Die Liste der Inkompatibilitäten wird mit jeder Version länger.[58]
In der klassischen Speicherung der Passwörter und der klassischen Replikation sind MariaDB und MySQL vollständig kompatibel, so dass man Replikationen zwischen MariaDB und MySQL ohne Probleme einrichten kann. Beim Einsatz neuer Features der MariaDB und MySQL in diesen Bereichen entstehen hingegen Inkompatibilitäten auf Administrationsseite.
Die interne Verarbeitung des Query Optimizer und Planner unterscheiden sich wesentlich, weil Monty Widenius enttäuscht vom Code der MySQL 5.6 war. Aufgrund seines Urteils entschied man sich bei MariaDB, den Query Optimizer, Query Planner und die Replikation neu zu gestalten, um Leistungsgewinne zu erzielen.
Ab MariaDB Server 10.3 wird die Kompatibilität zu Oracle-Datenbanken erhöht. Stored Procedures (Oracle PL/SQL) und Sequenzen können nun auch in der SQL-Syntax der Oracle-DB erstellt werden.[59]
MariaDB-Server können auch mit MySQL Workbench gewartet und administriert werden.[60]
MariaDB-Galera-Cluster
Bis zur Version MariaDB Server 10.0 gibt es zwei Binärversionen (mit und ohne MariaDB-Galera-Cluster-Unterstützung). Seit MariaDB Server 10.1 ist die Galera-Cluster-Unterstützung als Hochverfügbarkeitslösung integriert.[61]
MariaDB-ColumnStore
Mit einem neuen ColumnStore bietet MariaDB eine Kombination aus relationaler Datenbank mit Big-Data-Technologien.[62] MariaDB ColumnStore arbeitet als spaltenorientierte Speicher-Engine und unterstützt massive parallele Abfrageverteilung und paralleles Laden von Daten. Die Veröffentlichung erfolgte als Open Source unter der GPL2, ein Fork auf Basis von InfiniDB und Beiträgen der Open-Source-Community.
MariaDB ColumnStore ist ANSI-SQL-fähig und ermöglicht die gleichen Abfragen, Aggregationen und Funktionen wie herkömmliche SQL-Datenbanken.[63] Zudem kann ColumnStore gemeinsam mit relationalen Engines verwendet werden, so dass eine gemeinsame Verwendung herkömmlicher relationaler Speicherung und der spaltenorientierten Speicherung in einer Datenbank möglich ist.
Die MariaDB Foundation wurde 2012 gegründet, um die Entwicklung von MariaDB zu überwachen.[64][65][66] Der aktuelle CEO der MariaDB Foundation ist seit Februar 2019 Kaj Arnö.[67] Die Stiftung beschreibt ihre Mission wie folgt, ins deutsche übersetzt:[68]
Die Eckpfeiler der Mission der MariaDB Foundation sind Offenheit, Akzeptanz und Kontinuität.
Wir stellen sicher, dass die Codebasis des MariaDB-Servers für die Nutzung und Beiträge zu technischen Vorzügen offen bleibt.
Wir bemühen uns, die Akzeptanz durch Benutzer und über Anwendungsfälle, Plattformen und Bereitstellungsmittel hinweg zu erhöhen.
Wir bieten Kontinuität für das MariaDB Server-Ökosystem, unabhängig von kommerziellen Einheiten.
Die Stiftung arbeitet auch mit Technologiepartnern zusammen, z. B. beauftragte Google 2013 einen seiner Ingenieure, bei der MariaDB Foundation zu arbeiten.[69][70]
MariaDB Corporation Ab
Hauptentwickler des freien Datenbanksystems ist das Unternehmen MariaDB Corporation. Das Unternehmen wurde von ehemaligen MySQL-Entwicklern unter dem Namen SkySQL gegründet und am 1. Oktober 2014 in MariaDB Corporation umbenannt. Die jüngste Finanzierungsrunde brachte 9 Millionen Dollar, unter anderem von Intel Capital und California Technology Ventures.[71] Michael Howard trat die Nachfolge des Mitte 2015 ausgeschiedenen CEO Patrick Sallner an. MySQL- und MariaDB-Schöpfer Monty Widenius ist CTO des Unternehmens.[72] Das Unternehmen bietet Support, Schulung und Remote-Administration von MySQL- und MariaDB-Datenbanken. Das Geschäftsmodell des Unternehmens ist, über diese Dienstleistungen die finanziellen Ressourcen zu erlangen, um das Open-Source-System weiterzuentwickeln.[73]
Das Unternehmen kündigte am 26. Februar 2018 im Rahmen seiner internationalen Anwenderkonferenz M|18 die Gründung von MariaDB Labs an.[74] Hier soll an innovativen Datenbank-Verfahren geforscht werden. Zunächst ist die Zusammenarbeit mit Intel mit dem Ziel geplant, eine Referenzarchitektur für Datenbanken mit verteilten Speicher- und Server-Landschaften zu entwickeln.
MariaDB-MaxScale
MariaDB-MaxScale ist ein Anwendung-zu-Datenbank-Gateway, das zwischen Client-Anwendungen und Datenbanken eingesetzt wird. Es soll Datenbankverfügbarkeit, -sicherheit und -skalierbarkeit verbessern, ohne dass die Anwendung geändert werden muss.[75] Die MySQL Community verlieh MaxScale den Preis „Application of the Year 2016“.[76] Die MySQL Community Awards werden jährlich an Personen und Projekte vergeben, die das MySQL-Ökosystem supporten und erweitern.
Clustrix
Im September 2018 wurde bekannt, dass MariaDB Clustrix übernimmt. Mit dem Kauf von Clustrix und der Integration von deren Cluster-Verfahren soll MariaDB in kurzer Zeit für den skalierbaren, verteilten Einsatz bereitgestellt werden. Anstatt die notwendige Technik aufwendig selbst entwickeln zu müssen, sollen Anpassungen an APIs genügen – zumindest sei MariaDB bereits für die Anbindung externer Datenbank-Engines gerüstet.[77][78]
Kundendienst
Ähnlich wie für Datenbanksysteme anderer Hersteller bietet auch MariaDB kommerziellen Kundendienst („corporation support“) und Beratung sowie Onlineverwaltung („remote administration“) ihrer Datenbanksysteme.[79] Im Kundendienst der MariaDB Corporation sind auch zahlreiche Kernel-Entwickler der beiden freien Datenbanksysteme MySQL und MariaDB tätig.
OpenWorks Konferenz
Die jährliche Konferenz zur Datenbank MariaDB ist die OpenWorks. Sie fand 2019 zum sechsten Mal in New York statt. Es gab mehr als 60 Keynotes, Workshops und Sessions rund um MariaDB.[80]
Investoren
2013 erhielt die MariaDB Corporation mehr als 20 Millionen Dollar durch verschiedene Unternehmen.[81] Die EU investierte im Jahr 2017 rund 25 Millionen Euro in MariaDB.[82][83]