Deutschland: +49 (0)89/420 95 98 95
USA Subscription Renewals: +1-866-830-4410
EMEA: +353 1 6919191
Die MySQL Cluster Datenbank ist unter der GPL-Lizenz auf den Download-Seiten der Community erhältlich. Kommerzielle Versionen stehen in folgenden Editionen zur Verfügung:
Optionale Funktionen stehen gegen Aufpreis zur Verfügung. Bitte wenden Sie sich an das MySQL Vertriebsteam.
Lizenzierten Benutzern von MySQL Cluster steht eine Vielfalt an Optionen für kommerzielle Supportverträge zur Verfügung. Klicken Sie hier, um weitere Informationen zu den Supportangeboten für Entwicklung und produktiven Einsatz zu erhalten.
MySQL Cluster bietet vollständige ACID-Transaktionsunterstützung (Atomic, Consistent, Isolated, Durable).
Um Echtzeitleistung sicherzustellen, speichert MySQL Cluster Indizes im Arbeitsspeicher. Daten können auch im Arbeitsspeicher gespeichert und verwaltet werden, wenn sie für Anwendungen mit höchster Performanz und niedrigster Latenzzeit zugänglich sein müssen.
Daten, die hoch verfügbar sein müssen, jedoch nicht die Echtzeitleistungseigenschaften von speicherbasierte Daten benötigen, können auf der Festplatte gespeichert werden. Auf diese Weise kann MySQL Cluster für eine breite Vielfalt an Anwendungen eingesetzt werden, sodass Benutzer noch größere Datenbank-Cluster erstellen und diese effektiv verwalten können.
Die Architektur von MySQL Cluster ist auf 99,999 % Verfügbarkeit ausgelegt. Das bedeutet weniger als 5 Minuten Ausfallzeit pro Jahr, einschließlich regelmäßiger geplanter Wartungsvorgänge. MySQL Cluster umfasst mehrere Knoten, die über mehrere Hosts verteilt werden können, um im Fall eines Datenknoten-, Hardware- oder Netzwerkausfalls eine fortlaufende Verfügbarkeit zu gewährleisten. Durch das Speichern und Verteilen von Daten in einer Shared-Nothing-Architektur (d.h. ohne Verwendung einer gemeinsamen Festplatte) steht bei Ausfall eines Datenknotens immer mindestens ein zusätzlicher Datenknoten zur Verfügung, auf dem dieselben Informationen gespeichert sind. Damit können Anforderungen und Transaktionen weiterhin ohne Unterbrechung verarbeitet werden, und Daten bleiben über die Knoten hinweg konsistent.
Klicken Sie hier, um weitere Informationen zur Architektur von MySQL Cluster zu erhalten
Durch die automatische Replikation aller Daten in der Datenbank auf mehrere Datenknoten innerhalb derselben Knotengruppe werden die Daten im Verlauf der Transaktionen synchron repliziert. Das heißt, die Auswirkungen der einzelnen Transaktionen werden während der Transaktion auf alle entsprechenden Datenknoten übertragen. Wenn die Transaktion zur Durchführung bereit ist, wird eine Anforderung an alle an der Transaktion beteiligten Datenknoten gesendet. Wenn alle Knoten ihre Bereitschaft bestätigen, wird die Transaktion durchgeführt, und die Anwendung wird über den Erfolg der Transaktion informiert. Um eine ständige Konsistenz der Datenbank sicherzustellen, wird bei Ausfall eines Datenknotens während einer Transaktion der Vorgang abgebrochen. Die Anwendung wird entsprechend informiert, sodass ein Rollback durchgeführt und die Transaktion neu gestartet werden kann.
Durch die synchrone Replikation, bei der alle Daten bereits über mehrere Cluster-Knoten repliziert wurden, und mit der sofortigen Fehlererkennung wird eine Ausfallsicherungszeit auf einen anderen Knoten von weniger als einer Sekunde erreicht. Die Shared-Nothing-Architektur von MySQL Cluster stellt sicher, dass keine weitere Komplexität durch gemeinsam genutzten Speicher und die entsprechende Sperrenverwaltung entsteht, die den Ausfallsicherungsvorgang bremsen könnte.
MySQL Cluster Datenbankknoten können sich im Fehlerfall automatisch selbst neu starten, wiederherstellen und dynamisch neu konfigurieren. Die MySQL Cluster-Funktionen der Ausfallsicherung und der Wiederherstellung sind für alle Anwendungen und Clients vollkommen transparent.
Datensätze variabler Größe werden von MySQL Cluster höchst effizient verarbeitet, indem sichergestellt wird, dass nur die derzeit innerhalb der Zeile gespeicherten Daten Arbeitsspeicher belegen. Daher wird kein Arbeitsspeicher vergeudet, es können mehr Zeilen pro Gigabyte gespeichert werden, und größere Datenbestände können für speicherbasierte Daten genutzt werden.
MySQL Cluster stellt standardmäßig eine automatische Datenpartitionierung bereit. Um der linearen Skalierbarkeit weiteren Vorschub zu leisten, gibt MySQL Cluster Entwicklern und DBAs außerdem die Möglichkeit, den Zugriff durch die benutzerdefinierte Partitionierung genauer zu definieren. So sind Daten effektiv auf einem einzigen Knoten zugänglich, ohne dass für eine Transaktion oder Suche eine Kommunikation zwischen den Clustern erforderlich wäre.
Zur Unterstützung eines ständigen Betriebs ermöglicht MySQL Cluster Online-Aktualisierungen am aktiven Datenbankschema und Upgrades der zugrunde liegenden Hardware- und Software-Infrastruktur des Clusters.
MySQL Cluster unterstützt Online-Schema-Aktualisierungen wie das Hinzufügen und Entfernen von Tabellen oder Indizes sowie das Ändern von Tabellenschemata (z.B. das Hinzufügen von Spalten). In MySQL Cluster werden das Hinzufügen und Entfernen von Tabellen und Indizes als normale Operationen am Cluster durchgeführt und erfordern kein Rolling-Upgrade des Clusters.
Bei einem Rolling-Upgrade können einzelne Komponenten heruntergefahren werden, das Upgrade übernehmen und neu gestartet werden, während redundante Komponenten (Kopien) die Verarbeitung von Clientanforderungen fortsetzen. Datenbanksitzungen können somit erhalten bleiben, und Upgrades verursachen keine Ausfallzeiten.
MySQL Cluster kann auf allen führenden Hardware- und Betriebssystemplattformen ausgeführt werden. Benutzer sind daher weder auf proprietäre Plattformen angewiesen noch von bestimmten Herstellern abhängig. Dies erweitert die Auswahlmöglichkeiten und senkt die Kosten. Benutzer können mit preisgünstigen Cluster-Hosts beginnen und mit wachsender Arbeitslast oder Datenbankgröße Knoten nach und nach hinzufügen. Die Anschaffungskosten können sie dabei extrem niedrig halten.
Unter Verwendung der Multithread-Datenknoten von MySQL Cluster können Benutzer auf Hosts mit mehreren CPU-Sockets, Kernen oder Threads skalieren und damit eine höhere Leistung mit weniger Hardwareressourcen erzielen. Als Ergebnis können Benutzer eine Hardwareanhäufung vermeiden und durch reduzierte Systemadministration und einen niedrigeren Platz- und Energieverbrauch des Clusters die Gesamtbetriebskosten senken.
MySQL Cluster CGE ermöglicht die Durchführung einer Datensicherung auf einem aktiven Cluster. Bei der Datensicherung handelt es sich um einen konsistenten Cluster-weiten Snapshot der Datenbank, der archiviert und an einen sicheren, separaten Speicherort kopiert werden kann. Datensicherungen können später bei Bedarf auf eine Datenbank angewendet werden, um den Inhalt der Datenbank wiederherzustellen.
MySQL Server Knoten ermöglichen SQL-Zugriff auf die Datenknoten des Clusters. Entwickler erhalten damit eine Standard-SQL-Schnittstelle für die Programmierung. MySQL Server übernimmt wiederum das Senden von Anforderungen an die Datenknoten, sodass innerhalb der Anwendung keine Cluster-spezifische, systemnahe Programmierung erforderlich ist.
Anwendungen, die von der MySQL Cluster Datenbank eine maximale Echtzeitleistung erfordern, sollten direkt die systemeigene NDB-API verwenden. Diese C++-API wird detailliert im MySQL Cluster API Developer Guide beschrieben, der unter folgender Adresse zur Verfügung steht: http://dev.mysql.com/doc/#cluster
Es gibt außerdem Java- und HTTP-Schnittstellen zur NDB-API, die von den Anwendungen genutzt werden können. Dies sichert den Entwicklern völlige Unabhängigkeit und ermöglicht eine einfache Integration von MySQL Cluster in eine breite Auswahl an Web- und Unternehmensanwendungen.
MySQL CGE gibt Ihnen die Möglichkeit, Knoten online einem aktiven Cluster hinzuzufügen. Dies wird durch die Neupartitionierung von Daten beim Hinzufügen neuer Knotengruppen erreicht, sodass der Cluster einen fortlaufenden Betrieb und ständige Anwendungskonnektivität gewährleistet.
Durch die Online-Hinzufügung von Knoten können Benutzer dynamisch die Kapazität und Leistung skalieren, indem sie einem aktiven Cluster weitere Knoten hinzufügen. Geschäftskritische Anwendungen können somit völlig ohne Ausfallzeit mühelos skaliert werden.
MySQL Cluster wurde für eine Vielzahl an Abonnentendatenbanken innerhalb von CSP-Netzwerken (Communications Service Provider) eingesetzt. Über diese Funktionalität hinaus kann MySQL Cluster CGE 7.0 und höher als Back-End-Datenspeicher für LDAP-Verzeichnisserver dienen, sodass Benutzer ihre vorhandenen Investitionen in die LDAP-Technologie nutzen und erweitern können. Netzbetreiber erhalten die Möglichkeit, Initiativen zur vollständigen Ausschöpfung von Benutzer- und Netzwerkdaten zu ergreifen, die derzeit über bereits vorhandene Anwendungen und Netzwerke verteilt sind.
Um eine Reihe hoch personalisierter Services der nächsten Generation einzusetzen, die über Kommunikationsnetzwerke bereitgestellt werden, müssen Netzbetreiber Teilnehmer- und Netzwerkdaten in einem Standardformat zur Verfügung stellen. Abonnentenprofile werden immer komplexer, da sie neben den herkömmlichen Kundenkontakt- und Serviceberechtigungsdaten auch Netzwerkeinstellungs- und Medienobjekte erfassen. Gleichzeitig erfordern Sicherheits- und Überwachungsanforderungen eine höhere Transaktionalität der Daten. Durch den Einsatz von LDAP-Verzeichnissen nach Industriestandard und mit MySQL Cluster als Verzeichnisdatenspeicher können Operatoren die Standard-LDAP-Schnittstellen zur Authentifizierung und Autorisierung von Geräten und Teilnehmern nutzen – mit Echtzeitleistung, Carrier-Grade-Verfügbarkeit und einer Gesamtlösung, welche die Kosten, das Risiko und die Komplexität für umfangreiche, transaktionsintensive Verzeichnisdatenbestände senkt.
Gängige LDAP-Verzeichnisse, einschließlich Sun OpenDS und OpenLDAP, stellen Treiber für MySQL Cluster bereit.
Die Möglichkeit, Standortausfälle durch die Replikation von Clustern über mehrere separate Standorte aufzufangen, ist für viele Bereitstellungen eine wichtige Funktion. Die geografische Replikation steht als Option in der MySQL Cluster Carrier Grade Edition zur Verfügung und eignet sich ideal für Organisationen mit mehreren Rechenzentren. Einige Gründe für die Implementierung der geografischen Replikation sind:
Kommerzielle Kunden von MySQL Cluster CGE können NRE-Projekte (Non-Recurring Engineering) zur Implementierung durch MySQL Entwickler und Professional Services fördern. Hierzu gehören das Untersuchen, Entwickeln, Konzipieren und Testen potenzieller neuer Datenbankerweiterungen, um den Kunden einzigartige Möglichkeiten zur Lösung bestimmter betrieblicher oder technischer Herausforderungen oder zur Erstellung neuer wertsteigernder Lösungen mit MySQL Cluster zu bieten.

