Web

 

MySQL-Datenbank wird Cluster-fähig

15.04.2004

Das Datenbank-Management-System (DBMS) "MySQL" vom gleichnamigen schwedischen Unternehmen kann in der neuen Vorabversion auch auf Clustern laufen. Das Open-Source-Produkt wird im unteren bis mittleren Leistungssegment zu einer Konkurrenz für die Platzhirsche Oracle, IBM und Microsoft.

Das neue MySQL läuft verteilt auf den Rechenknoten eines Clusters. Sollten einer oder mehrere dieser Nodes ausfallen, übernehmen andere automatisch deren Aufgaben. Durch diese Fehlertoleranz bringt es das DBMS nach Angaben des Herstellers auf eine Verfügbarkeit von 99,999 Prozent. Das bedeutet eine Ausfallzeit von weniger als fünf Minuten pro Jahr. Die Antwortenzeiten der relationalen Datenbank liegen (bei synchroner Replikation) zwischen fünf und zehn Millisekunden. In einem kleinen Cluster mit vier Nodes, die aus je zwei Prozessoren bestehen, beträgt der Durchsatz 100.000 replizierte Transaktionen pro Sekunde.

Die minimale Konfiguration eines Clusters für MySQL besteht aus zwei Nodes mit je einer CPU. Ein solches System kommt jedoch nur auf einen Durchsatz von 10.000 Transaktionen pro Sekunde. Der Hersteller empfiehlt daher mindestens vier Nodes mit je zwei Prozessoren. Nach oben hat die Zahl der Knoten keine Grenze. Kunden haben MySQL bisher auf Clustern mit bis zu 48 Nodes getestet. Jeder Knoten sollte minimal aus zwei Intel-Xeon-CPUs mit 2,8 Gigahertz Taktrate, 16 GB RAM, vier SCSI-Festplatten mit je 73 GB Kapazität, Raid-1-Controller und Gigabit-Ethernet-Verbindung bestehen. Bei Rechnerverbünden mit mehr als acht Nodes empfiehlt MySQL, nicht Gigabit-Ethernet, sondern dedizierte Cluster-Interconnects wie Myrinet zu verwenden.

Aus mehreren Gründen nutzt MySQL eine "Shared-Nothing"-Architektur; das heißt, jeder Node hat eigene Haupt- und Festplattenspeicher. "Shared Storage" wie bei Oracles "Real Application Cluster" (RAC) verlangt die Anschaffung zusätzlicher Hardware für ein Storage Area Network. Solch ein SAN kann eine weitere Fehlerquelle sein und es verzögert das Failover.

Das Cluster-fähige MySQL verschiebt im Falle eines Fehlers in einem Knoten dessen Rechenlast in weniger als einer Sekunde auf einen anderen Knoten des Clusters. Dieses Failover erfolgt automatisch und transparent. "Anwendungsentwickler müssen sich nicht um zugrunde liegende Algorithmen für Failover oder um die Verteilung der Datenbank auf die verschiedenen Nodes kümmern", erklärt Zack Urlocker, Marketing-Chef bei MySQL. Der Datenbank-Server und die eigentliche Datenbank können auf unterschiedlichen Nodes abgelegt sein. Die Steuerung des Cluster-DBMS geschieht derzeit noch über die Eingabe von Kommandos. Der Anbieter arbeitet allerdings an einer grafischen Benutzeroberfläche, die unter dem Titel "MySQL Administrator" möglichst noch in diesem Jahr erscheinen soll.

MySQL Cluster basiert im Wesentlichen auf Technik, welche das Unternehmen im Oktober letzten Jahres mit der Übernahme des schwedischen Cluster-Spezialisten Alzato erworben hatte. Dessen proprietäre Entwicklungen werden nun Open Source. Das Cluster-RDBMS läuft allerdings nicht nur auf den Enterprise-Linux-Distributionen von Suse und Red Hat. Es ist auch geeignet für Microsofts Windows 2000 oder XP, Sun Solaris, HP-UX, IBMs AIX sowie Mac OS X von Apple.

Wie bisher gibt es auch diese MySQL-Version in zwei Lizenzformen. Unter der Linux-typischen GPL müssen Änderungen am Source Code als Open Source wieder veröffentlicht werden. Für Unternehmen, die mit der Datenbank eigene Produkte entwickeln wollen, deren Quellcode geheim bleiben soll, bieten die Schweden eine kommerzielle Lizenz an. Die GPL-Variante ist kostenlos, während die kommerzielle Version zu einem Preis von weniger als 5000 Dollar pro Prozessor auf den Markt kommen soll. Endgültig freigegeben werden soll MySQL Cluster im dritten Quartal dieses Jahres.

Angesichts der hohen Verfügbarkeit, des schnellen Durchsatzes und der kurzen Antwortzeiten des Cluster-DBMS sind sofort Spekulationen aufgetaucht, MySQL nehme es jetzt mit Oracle, IBM und Microsoft auf. Doch die Schweden weisen derlei weit von sich. "Die haben sehr ausgereifte Produkte mit allen Features, die man sich überhaupt vorstellen kann", erklärt MySQL-Manager Urlocker. "Das sind Ferraris, während wir eine Honda-Datenbank liefern mit allen wichtigen Funktionen und mit extremer Zuverlässigkeit bei geringen Kosten."

Die Schweden rechnen sich gute Chancen im Segment der preiswerten Datenbanken für Standardanwendungen aus, in dem einst Microsoft reüssiert hat. Die Hauptanstrengungen der Redmonder richten sich aber seit einiger Zeit auf das obere Leistungssegment. Dort haben Oracle und IBM den Massenmarkt bei kleinen und mittelgroßen Unternehmen erst vor kurzem wieder entdeckt. MySQL vergrößerte nach einer Untersuchung von Evans Data seine Anwenderschaft im letzten Jahr um 30 Prozent. Zum Vergleich: Bei Microsoft betrug das Wachstum sechs Prozent. 2003 verdoppelten die Schweden ihren Umsatz auf zehn Millionen Euro. (ls)