Heutzutage, da Konzepte wie Cloud Computing und Cloud-Dienste nach und nach aufkommen, scheinen Datenbanken in der Cloud nichts Neues zu sein. Hier stellen wir Amazons neu eingeführtes Amazon RDS vor, bei dem es sich um die MySQL-Datenbank als Cloud-Dienst handelt. 51CTO empfiehlt „MySQL Database Introduction and Mastery Tutorial“
Amazon hat seiner Amazon Web Services (AWS)-Plattform kürzlich eine neue MySQL-Datenbank namens Amazon Relational Database Service (RDS) hinzugefügt, die wie das traditionelle MySQL-System funktioniert. Vor RDS hatten Kunden mehrere Optionen für AWS-Datenbankdienste:
Vom Kunden bereitgestellter Datenbankdienst, der auf Amazon Machine Image (AMI) ausgeführt wird
SimpleDB-Dienst im Besitz von Amazon Web Services
SimpleDB ist ein einfacher Datenspeicher, dem die volle Funktionalität eines vollwertigen relationalen Datenbankverwaltungssystems (RDBMS) fehlt, der jedoch einen skalierbaren Schlüsselwertspeicher bietet. Der vom Kunden bereitgestellte Datenbankdienst unterscheidet sich nicht wesentlich von der herkömmlichen Rechenzentrumsumgebung. Die eigenen Mitarbeiter des Kunden sind für die Verwaltung der Datenbankanwendung verantwortlich, einschließlich Konfiguration, Leistungsoptimierung, Kapazitätsverwaltung, Versionsaktualisierungen, Patches und Datensicherung usw. Sie können es auf die gleiche Weise steuern, indem Sie interaktive Tools verwenden, die eine Verbindung zu einer herkömmlichen MySQL-Datenbank herstellen.
Amazon RDS ermöglicht es den Mitarbeitern des Kunden, viele MySQL-Betriebs- und Wartungsaufgaben zu reduzieren. Dadurch ist für die Skalierbarkeit und Leistungsüberwachung der Datenbank-Computing-Ressourcen kein menschliches Eingreifen erforderlich. Datenbanksoftware wird in der Regel vom Dienstanbieter gepatcht und gesichert, und der Aufbewahrungszeitraum wird vom Kunden festgelegt. Die Skalierbarkeit entsteht durch das, was AWS „Instanzklassen“ nennt, von denen es fünf gibt. Sie können schrittweise von einem gewöhnlichen virtuellen CPU-Kern und 1,7 GB Speicher (als „kleine Datenbankinstanz“ bezeichnet) zu einer „sehr großen Datenbankinstanz“ mit 68 GB Speicher und 8 virtuellen CPU-Kernen sowie dem Sicherungsspeicher aufsteigen Sind die aktiven Datenbankdaten zu 100 % belegt, wird zusätzlicher Speicherplatz berechnet. Und die Daten liegen in einer anderen Availability Zone als dort, wo sich die Instanz befindet. Dieses Konzept ähnelt dem Off-Site-Datenschutzkonzept des traditionellen Datensicherheitsmodells.
Der Service profitiert von der Flexibilität, da AWS ein wöchentliches Wartungsfenster von 4 Stunden definiert. Dieses Wartungsfenster kann zum Patchen von Anwendungssoftware und zum Sichern von Daten genutzt werden. Kunden können den Patching-Prozess nicht ablehnen. Sie können jedoch angeben, wann das Wartungsfenster während der Woche auftritt. Während eines Wartungsfensters wird eine Datenbankinstanz für einen bestimmten Zeitraum offline geschaltet. Amazon gibt an, dass „Patches nur in seltenen Fällen mehr als einen Teil Ihres Wartungsfensters in Anspruch nehmen, und selbst wenn dies der Fall ist, handelt es sich nur um sicherheits- oder haltbarkeitsbezogene Patches.“
Das bedeutet, dass Kunden ein solches wöchentliches Instanz-Offline-Ereignis vorhersehen und planen müssen. Auch wenn der Anbieter sagt, dass es unwahrscheinlich ist, dass die vier Stunden ausgehen, rechnen Kunden im schlimmsten Fall mit vier Stunden Offlinezeit der Instanz pro Woche. Für Kunden, die akzeptieren können, dass eine Datenbankinstanz für einen relativ kurzen Zeitraum nicht verfügbar ist, kann eine geplante Abschaltung mit minimalen möglichen Auswirkungen akzeptabel sein. Doch manche Kunden haben diese Wahlfreiheit nicht. Sie müssen den Service rund um die Uhr verfügbar halten, auch während wöchentlicher Wartungsfenster. Datenbankreplikationstechnologie wird häufig verwendet, um bei herkömmlichen Datenbankbereitstellungen eine hohe Verfügbarkeit zu erreichen. Kann die Replikationstechnologie auch in RDS verwendet werden, sodass Kunden unterschiedliche Wartungszeiten für verschiedene Datenbankinstanzen festlegen können? Sind beispielsweise die folgenden Situationen möglich?
◆2 oder mehr Instanzen, die im Master-Slave-Modus laufen?
◆2 Instanzen laufen im Master-Master-Modus?
◆2 oder mehr Instanzen, die im Clustermodus ausgeführt werden?
Eine klare Antwort gibt es noch nicht. Im Abschnitt „Kommende neue Funktionen“ der RDS-Dienstdetailseite geht Amazon davon aus, dass die Optionen für die Datenreplikationsverfügbarkeit wie folgt aussehen werden:
Bietet hohe Verfügbarkeit – Für Entwickler und Unternehmen, die die Flexibilität über die automatisierten Backups von Amazon RDS hinaus wünschen, fallen hierfür keine zusätzlichen Kosten an. Mit Hochverfügbarkeitsunterstützung können sie Datenbankinstanzen einfach und kostengünstig synchron über mehrere Availability Zones hinweg replizieren, um Ausfälle durch einen einzelnen Speicher zu verhindern.
Es sieht so aus, als ob dadurch Verfügbarkeitsprobleme auf Kosten mehrerer Verfügbarkeitszonen gelöst werden. Traditionelle Technologien zur Lösung von Verfügbarkeitsproblemen, wie Master-Slave- und Master-Master-Modelle, können an dieser Stelle keine Rolle spielen.