MariaDB
 sql >> Datenbank >  >> RDS >> MariaDB

Vier Dinge, die Sie über Amazon Aurora nicht wussten

Wir hören diese Frage oft:Was ist los mit Amazon Aurora? Bei der Bestimmung des besten verwalteten Datenbankdienstes für Ihr Unternehmen müssen mehrere Faktoren berücksichtigt werden – und ein roter Faden, der sich durch alle zieht, ist, wie viel Kontrolle Sie benötigen. Amazon legt großen Wert auf sein Aurora-DBaaS-Angebot, aber – je nach Ihren Anforderungen und Prioritäten – kann es besser für Sie sein, eine Datenbank wie MariaDB auf Amazon EC2 oder einen anderen, nicht von Amazon stammenden Dienst auszuführen.

Hier sind vier Dinge, die Sie wahrscheinlich noch nicht über Amazon Aurora wussten.

Eine alternde, veraltete Datenbank

Amazon Aurora 2.x verwendet eine alte Version von MySQL 5.7.

Aurora 2.0.1 wurde im Februar 2018 veröffentlicht und verwendet MySQL 5.7.12, das selbst im April 2016 veröffentlicht wurde. Aurora 2.x verwendet immer noch eine alte Version von MySQL 5.7. Allerdings veröffentlicht Amazon die verwendete Wartungsversion nicht mehr. Dies sollte nicht überraschen. Seit 5.7.12 gab es über ein Dutzend MySQL-Wartungsversionen. Wie viele der darin enthaltenen Bugfixes hat Amazon zurückportiert? 17… von Hunderten.

  • Aurora 2.02.0:Fehler Nr. 22833364
  • Aurora 2.02.3:Fehler #24929748, #26867509, #22843444, #25080442
  • Aurora 2.03.0:Fehler #24929748, #26867509, #22843444, #25080442
  • Aurora 2.03.3:Fehler Nr. 25361251, Nr. 26734162, Nr. 27460607, Nr. 22343910, Nr. 23074801, Nr. 25287633
  • Aurora 2.04.0:Fehler #26225783
  • Aurora 2.04.2:Fehler #24829050

Wenn Sie sich eine neue Datenbank aussuchen könnten, würden Sie eine vor über drei Jahren veröffentlichte wählen, eine, der drei Jahre Fehlerkorrekturen, Sicherheitspatches, Verbesserungen und neue Funktionen fehlen?

Erforderliche Ausfallzeit und Unterbrechung

Aurora erfordert Ausfallzeiten für die Wartung. Während einige Wartungsarbeiten optional sind und auf unbestimmte Zeit verschoben werden können, sind andere Wartungsarbeiten wie Sicherheits- und Zuverlässigkeitspatches nicht nur erforderlich, sondern führen während eines zufälligen 30-minütigen Wartungsfensters zu Ausfallzeiten. Darüber hinaus führen Datenbank-Upgrades (d. h. Datenbank-Engine-Updates) zu einer Ausfallzeit von 20 bis 30 Sekunden, da sie auf jeder Datenbankinstanz innerhalb eines Clusters gleichzeitig durchgeführt werden.

MariaDB Platform hingegen unterstützt fortlaufende Upgrades mit reibungslosen Umschaltungen, sodass DBAs bei Bedarf Wartungsarbeiten ohne Ausfallzeiten durchführen können.

Abgesehen von Wartung und Upgrades kann es bei Aurora bis zu zwei Minuten dauern, bis ein automatisches Failover durchgeführt wird, was zu weiteren Ausfallzeiten führt. Darüber hinaus führt das automatische Failover zu verlorenen Verbindungen, Sitzungen und In-Flight-Transaktionen.

MariaDB Platform unterstützt im Gegensatz zu Aurora Multi-Master-Clustering, um Ausfallzeiten aufgrund eines unerwarteten Ausfalls zu vermeiden. Darüber hinaus unterstützt MariaDB Platform Verbindungsmigration, Sitzungswiederherstellung und Transaktionswiedergabe, um sicherzustellen, dass unerwartete Fehler keine Auswirkungen auf Anwendungen haben.

Mangel an Unternehmenssicherheit

Aurora fehlen viele der Sicherheitsfunktionen für Unternehmen, die von modernen Datenbanken erwartet werden, darunter eine Datenbank-Firewall, dynamische Datenmaskierung, Rollen, Schlüsselrotation und TLS 1.3.

Aurora unterstützt den Amazon Key Management Service, unterstützt jedoch keine Schlüsselrotation für eine Datenbankinstanz. Stattdessen kann ein Schlüsselalias verwendet werden, um den Schlüssel für neue Datenbankinstanzen zu ändern. Selbst wenn ein neuer Schlüssel hinzugefügt wird, verschlüsseln und entschlüsseln vorhandene Datenbankinstanzen weiterhin Daten mit dem alten Schlüssel.

Die MariaDB-Plattform unterstützt die Schlüsselrotation, und wenn ein neuer Schlüssel hinzugefügt wird, kann sie die Daten automatisch mit dem neuen Schlüssel neu verschlüsseln, wodurch der alte Schlüssel verworfen werden kann.

Aurora fehlt die leistungsstarke Datenbank-Firewall und die dynamischen Datenbankmaskierungsfunktionen, die in MariaDB Platform verfügbar sind, und da Aurora auf einer alten Version von MySQL basiert, fehlen ihm auch Rollen. Außerdem ist es auf TLS 1.0, 1.1 und 1.2 beschränkt.

Der kleinste gemeinsame Nenner

Aurora bietet Benutzern eine Bare-Bones-Datenbank, die mit einer Cookie-Cutter-Vorlage erstellt wurde, die den kleinsten gemeinsamen Nenner erfüllen soll. Während MariaDB Platform Lese-, Schreib- und Speichervorgänge mit transparentem Sharding über die Spider-Speicher-Engine skalieren oder von schreib- und speicherplatzoptimierter Speicherung auf SSDs über die MyRocks-Speicher-Engine (von Facebook entwickelt) profitieren kann, hat Aurora beides nicht. Es ist auf die InnoDB-Speicher-Engine beschränkt.

Dann gibt es verteilte, spaltenweise Speicherung und massiv parallele Verarbeitung mit MariaDB ColumnStore. Es ist eine weitere Speicher-Engine, die in Aurora nicht verfügbar ist. Während Amazon die Verwendung von Aurora für die Transaktionsverarbeitung und Redshift für die Analyse vorschlagen würde, kann beides mit der MariaDB-Plattform durchgeführt werden, die eine hybride transaktionale/analytische Verarbeitung (HTAP) ermöglicht.

Neben Workload-optimierten Speicher-Engines sind in MariaDB Platform viele Funktionen verfügbar, die in Aurora nicht zu finden sind, darunter Oracle Database-Kompatibilität (d. h. PL/SQL), temporale Tabellen, Point-in-Time-Rollback, Streaming-Change-Data-Capture , ein Apache Kafka-Produzent, transparente Lese-/Schreibaufteilung, Prüfbeschränkungen, Standardwertausdrücke, allgemeine Tabellenausdrücke, Set-Operatoren, Fensterfunktionen, benutzerdefinierte Funktionen (Skalar, Aggregat und Fenster), Sequenzen und mehr.

Amazons eigene Erfahrungen mit Aurora verdeutlichen die Bedeutung der obigen Überlegungen. Kurz nachdem einige ihrer Datenbanken auf Aurora umgezogen waren, kam es während des Prime Day 2018 zu weit verbreiteten Ausfällen und anderen Datenbankproblemen. Da der Prime Day 2019 näher rückt, wünschen wir Amazon viel Glück!