Zum Inhalt springen
Der Guide für ein smartes Leben.
Open-Source-Datenbanken

Teil 4: Preiswerte Alternativen zu MySQL

Autoren: Redaktion pcmagazin und Timo Haberkern • 28.4.2009 • ca. 3:05 Min

Max DB Max DB () ist ein relationales Datenbanksystem, das die Grundlage vieler SAP-Installationen bildet. Dementsprechend ausgereift ist dieses System. Bis zum Jahr 2004 wurde die Datenbank unter dem Namen SAP DB vertrieben. Die Wurzeln reichen aber auf Adabas D der Software AG zurück. Im Open...

Max DB

Max DB () ist ein relationales Datenbanksystem, das die Grundlage vieler SAP-Installationen bildet. Dementsprechend ausgereift ist dieses System.

Bis zum Jahr 2004 wurde die Datenbank unter dem Namen SAP DB vertrieben. Die Wurzeln reichen aber auf Adabas D der Software AG zurück. Im Open-Source-Umfeld wurde Max DB bekannt, als im Jahr 2003 die Zusammenarbeit mit MySQL AB verkündet wurde, die Distributionsrechte für MaxDB beinhaltete. Daraufhin erlebte MaxDB einen kurzzeitigen Boom.

Leider wurde die Zusammenarbeit zwischen MySQL und SAP wieder aufgegeben. Seit dieser Zeit ist die weitere Entwicklung der Datenbank etwas unklar. Die Software steht bis zur Version 7.6 als Open-Source zur Verfügung. Diese Version wird von der Community weiterentwickelt.

Der von SAP vorangetriebene Entwicklungszweig ist aber Closed-Source. Die Community rund um MaxDB ist zwar sehr rührig, allerdings steht kaum zu erwarten, dass eine Entwicklung der Open-Source-Version außerhalb von SAP stattfinden wird. Die aktuelle Version 7.7 steht aber immerhin in einer kostenlosen Lizenz zur Verfügung.

Funktional gibt es nur wenig an MaxDB auszusetzen, alle wichtigen Funktionen sind mit an Bord. Transaktionen, Trigger, Stored Procedures sind Dinge, welche die Datenbank bereits seit Langem beherrscht und die daher stabil und ausgereift sind.

Der Datenbank-Server skaliert zudem sehr gut und ist daher auch für Anwendungen mit sehr großen Datenmengen oder hoher Last geeignet. Eine Besonderheit ist zudem, dass der Betrieb der Software für administrative Arbeiten nicht unterbrochen werden muss.

Die Software funktioniert unter einer Vielzahl von Unix-Systemen und unter Windows. Eine Anbindung an verschiedene Programmiersprachen wie Python, Java, PHP oder Perl ist ebenfalls möglich.

Pro & Contra: Max DB

+ Hohe Leistungsfähigkeit + Hohe Verfügbarkeit + Skaliert sehr gut für große Datenmengen und unter hoher Last + Sehr gute Unterstützung von Enterprise-Features wie Trigger, Stored-Procedures oder Transaktionen - Open-Source-Version nicht aktuellster Stand - Unklare Aussicht der Open-Source-Version

Außenseiter

Neben den bislang genannten Datenbanken existieren etliche andere Open-Source-Lösungen, die weniger bekannt oder einfach nur auf ein anderes Anwendungsszenario ausgelegt sind. Außer den bislang vorgestellten Lösungen, die auf mittlere bis große Anwendungen oder gar auf den Unternehmensmarkt ausgelegt sind, existieren auch Lösungen für die einfacheren Anforderungen, für die der Einsatz einer hochgezüchteten Datenbank-Engine keinen Sinn macht.

Diese Datenbanken haben oft den Vorteil, dass sie einfacher zu installieren und einzusetzen sind. Populäre Vertreter dieser Datenbank-Klasse sind beispielsweise SQLite (), Apache Derby () oder Hypersonic SQL ().

Während SQLite von sehr vielen Programmiersprachen verwendet werden kann (darunter auch PHP), sind Derby und Hypersonic als reine Java-Systeme gestartet worden und bieten dementsprechend auch nur Support für diese Programmiersprache an.

Alle drei haben jedoch gemeinsam, dass sie sehr sparsam mit Ressourcen umgehen und bei kleinen Datenmengen blitzschnell arbeiten.

Für einfache Anwendungen, die nur wenig Daten zu speichern haben, sind diese vollkommen ausreichend und meist die bessere und effektivere Wahl als ein Client/Server-System, wie MySQL oder PostgreSQL.

Objektorientiert

Alle hier vorgestellten Datenbank-Systeme haben eines gemeinsam: Es sind Datenbanken mit einer relationalen Logik. Im Zeitalter objektorientierter Programmierung eine etwas schwierige Konstellation, da die Datenhierarchien von relationalen Datenbanken und Objekten nicht zusammenpassen.

Zwar existieren für nahezu alle Programmiersprachen objektrelationale Mapper, die als Zwischenschicht zwischen den objektorientierten Datenstrukturen einer Anwendung und der relationalen Datenhaltung der Datenbank-Software dienen, ideal ist eine solche Konstellation allerdings nicht immer.

Bereits seit einigen Jahren wird daher auch des Öfteren an Datenbanken entwickelt, welche die Daten in objektorientierter Form speichern. So richtig durchsetzen konnte sich bis heute allerdings noch keine dieser Lösungen.

Dies liegt unter anderem auch daran, dass sich die Lösungen meist auf eine Programmiersprache beschränken. Daher ist es kaum verwunderlich, dass auch der Open- Source-Bereich hier noch kaum praxistaugliche Lösungen parat hält.

Fazit

Bei Open-Source und Datenbanken sollte man nicht sofort und ausschließlich an MySQL denken. Gerade PostgreSQL ist eine ernstzunehmende Alternative, die MySQL in vielerlei Hinsicht überlegen ist.

MaxDB ist für all jene interessant, die im SAP-Umfeld arbeiten, leider ist die Zukunft dieses Projektes noch offen, obwohl es ansonsten sehr gute Leistungswerte besitzt. Wie und ob das Projekt aber als Open-Source- Lösung weiter entwickelt wird, steht noch in den Sternen.

Firebird ist eine Lösung, die zwischen kleinen Datenbank-Systemen wie SQLite und den großen wie MySQL oder PostgreSQL angesiedelt ist. Sie bietet alles, was moderne Webanwendungen benötigen, verfügt allerdings nur über wenig komfortable Administrationswerkzeuge.