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

Ankündigung der MariaDB 10.2-Unterstützung – ClusterControl 1.5

Als Teil der Veröffentlichung von ClusterControl 1.5 angekündigt, bieten wir jetzt volle Unterstützung für MariaDB Version 10.2. Diese neue Version bietet eine noch bessere Integration mit Galera Cluster, der HA-Lösung der Wahl von MariaDB, und bietet auch Verbesserungen an SQL wie Fensterfunktionen, allgemeine Tabellenausdrücke und JSON-Funktionen.

MariaDB ist die am schnellsten wachsende Open-Source-Datenbank und erreicht mehr als 60 Millionen Entwickler weltweit durch ihre Aufnahme in alle wichtigen Linux-Distributionen sowie eine wachsende Präsenz bei den weltweit führenden Cloud-Anbietern. Seine weit verbreitete Verwendung über Linux-Distributionen und Cloud-Plattformen hinweg sowie seine Benutzerfreundlichkeit haben MariaDB schnell zum Open-Source-Datenbankstandard für das moderne Unternehmen gemacht.

MariaDB Server wurde in der jüngsten OpenStack-Umfrage als Nummer eins und zwei der heute verwendeten Datenbanktechnologien aufgeführt.

Was ist neu in Version 10.2?

MariaDB Server 10.1 brachte die standardmäßig integrierte Integration von Galera Cluster, um seinen Benutzern zu ermöglichen, die ultimative Hochverfügbarkeit zu erreichen. Multiplenines war ein Early Adopter dieser Clustering-Technologie und war begeistert, dass MariaDB sie für HA einsetzt.

Hier sind einige der Verbesserungen, die in der neuen Version 10.2 enthalten sind, wie von MariaDB angekündigt…

  • SQL-Erweiterungen wie Fensterfunktionen, allgemeine Tabellenausdrücke und JSON-Funktionen ermöglichen neue Anwendungsfälle für MariaDB Server
  • Standard-MariaDB-Server-Replikation hat weitere Optimierungen
  • Viele Bereichsbeschränkungen wurden entfernt, was eine einfachere Verwendung ermöglicht und es keine Notwendigkeit für die Handhabung von Beschränkungen auf Anwendungsebene gibt
  • MyRocks, eine neue von Facebook entwickelte Speicher-Engine, wurde eingeführt, die die Anwendungsfälle für MariaDB Server weiter bereichern wird (HINWEIS:Diese neue Speicher-Engine ist jetzt auch für MariaDB-Bereitstellungen in ClusterControl verfügbar, ClusterControl jedoch unterstützen MyRocks spezifisches Monitoring noch nicht .)

Fensterfunktionen

Fensterfunktionen sind in Business Intelligence (BI) beliebt, wo eine komplexere Berichterstellung auf der Grundlage einer Teilmenge der Daten erforderlich ist, z. B. Länder- oder Vertriebsteammetriken. Ein weiterer häufiger Anwendungsfall besteht darin, dass zeitreihenbasierte Daten basierend auf einem Zeitfenster anstatt nur auf einem aktuellen Datensatz aggregiert werden sollten, wie alle Zeilen innerhalb einer bestimmten Zeitspanne.

Da Analysen für Endbenutzer immer wichtiger werden, bieten Fensterfunktionen eine neue Möglichkeit, leistungsoptimierte analytische SQL-Abfragen zu schreiben, die einfach zu lesen und zu warten sind und die Notwendigkeit beseitigen, teure Unterabfragen und Selbstverknüpfungen zu schreiben.

Häufige Tabellenausdrücke

Hierarchische und rekursive Abfragen werden normalerweise mit Hilfe von Common Table Expressions (CTEs) implementiert. Sie ähneln abgeleiteten Tabellen in einer FROM-Klausel, aber durch ein Identifizierungsschlüsselwort WITH kann der Optimierer effizientere Abfragepläne erstellen. Als automatisch erstellter temporärer und benannter Ergebnissatz, der nur für den Zeitpunkt der Abfrage gültig ist, kann er für die rekursive und hierarchische Ausführung verwendet werden und ermöglicht auch die Wiederverwendung des temporären Datensatzes. Eine dedizierte Methode hilft auch dabei, ausdrucksstärkeren und saubereren SQL-Code zu erstellen.

JSON-Funktionen

JSON (JavaScript Object Notation), ein textbasiertes und plattformunabhängiges Datenaustauschformat, dient nicht nur dem Datenaustausch, sondern auch als Format zur Speicherung unstrukturierter Daten. MariaDB Server 10.2 bietet mehr als 24 JSON-Funktionen, um die Abfrage, Änderung, Validierung und Indizierung von JSON-formatierten Daten zu ermöglichen, die in einem textbasierten Feld einer Datenbank gespeichert sind. Dadurch kann das leistungsstarke relationale Modell von MariaDB bei Bedarf durch die Arbeit mit unstrukturierten Daten bereichert werden.

Durch die Verwendung virtueller Spalten, der JSON-Funktion JSON_VALUE und der neuesten Indizierungsfunktion von MariaDB Server 10.2 für virtuelle Spalten werden JSON-Werte automatisch aus der JSON-Zeichenfolge extrahiert, in einer virtuellen Spalte gespeichert und indiziert, um den schnellsten Zugriff auf JSON zu ermöglichen Zeichenfolge.

Mit der JSON-Funktion JSON_VALID garantieren die neuen CHECK CONSTRAINTS in MariaDB Server 10.2, dass nur JSON-Strings im korrekten JSON-Format in ein Feld eingefügt werden können.

Binäres Log-basiertes Rollback

Das erweiterte mysqlbinlog-Dienstprogramm, das mit MariaDB Server 10.2 geliefert wird, enthält eine neue Point-in-Time-Rollback-Funktion, die es einer Datenbank oder Tabelle ermöglicht, zu einem früheren Zustand zurückzukehren, und liefert ein binäres Log-basiertes Rollback bereits festgeschriebener Daten. Das Tool mysqlbinlog modifiziert keine Daten direkt, es generiert eine „Exportdatei“ mit den rückgängig gemachten Aussagen der Transaktionen, die in einer binären Protokolldatei protokolliert werden. Die erstellte Datei kann mit dem Befehlszeilen-Client oder einem anderen SQL-Tool verwendet werden, um die enthaltenen SQL-Anweisungen auszuführen. Auf diese Weise werden alle festgeschriebenen Transaktionen bis zu einem bestimmten Zeitstempel rückgängig gemacht.

Bei logischen Fehlern wie dem Hinzufügen, Ändern oder Löschen von Daten bestand die einzige Möglichkeit bisher darin, mysqlbinlog zu verwenden, um Transaktionen zu überprüfen und die Probleme manuell zu beheben. Dies führt jedoch häufig zu Dateninkonsistenzen, da Korrekturen typischerweise nur die falsche Aussage adressieren und dabei andere Datenabhängigkeiten ignorieren.

Die Wiederherstellung einer riesigen Datenbank wird normalerweise durch DBA- oder Benutzerfehler verursacht und kann zu einem erheblichen Ausfall des Dienstes führen. Das Zurücksetzen der letzten Transaktionen per Point-in-Time-Rollback dauert nur die Zeit des Extrahierens, einer kurzen Überprüfung und der Ausführung der zurückgesetzten Transaktionen – das spart wertvolle Zeit, Ressourcen und Service.

Warum MariaDB?


Warum sollten Sie MariaDB als Technologie für Ihre Anwendung wählen, da mehrere MySQL-Optionen zur Auswahl stehen? Hier sind einige der Vorteile der Auswahl von MariaDB...

  • MariaDB basiert auf einer modernen Architektur, die auf jeder Ebene erweiterbar ist:Client, Cluster, Kernel und Speicher. Diese Erweiterbarkeit bietet zwei Hauptvorteile. Es ermöglicht kontinuierliche Community-Innovationen über Plugins und erleichtert Kunden die Konfiguration von MariaDB zur Unterstützung einer Vielzahl von Anwendungsfällen von OLTP bis OLAP.
  • MariaDB entwickelt Funktionen und Erweiterungen, die Teil ihrer eigenen Roadmap sind, unabhängig von Oracle/MySQL. Dies ermöglicht es MariaDB, breitere Community-Innovationen zu akzeptieren und anzuziehen sowie intern entwickelte neue Funktionen hinzuzufügen, die die Migration von proprietären Systemen zu Open-Source-MariaDB erleichtern.
  • MariaDB wurde entwickelt, um die Datenbank auf jeder Ebene zu sichern, was sie zu einer vertrauenswürdigen Allzweckdatenbank macht, die in Branchen wie Behörden und Banken verwendet wird, die Sicherheitsfunktionen auf höchstem Niveau erfordern.
  • MariaDB bietet Unterstützung für eine Vielzahl von Speicher-Engines, einschließlich NoSQL-Unterstützung, und gibt seinen Benutzern mehrere Möglichkeiten, um diejenige zu bestimmen, die am besten mit ihrer Umgebung funktioniert.
  • MariaDB hat viele leistungssteigernde Verbesserungen implementiert, einschließlich Abfrageoptimierungen, die MariaDB in mehreren Benchmark-Tests um 3-5 % besser abschneiden lassen als eine ähnlich konfigurierte MySQL-Umgebung.

ClusterControl für MariaDB

ClusterControl bietet Unterstützung für jede der führenden MariaDB-Technologien...

  • MariaDB-Server: MariaDB Server ist eine universelle Datenbank, die mit einer erweiterbaren Architektur entwickelt wurde, um eine breite Palette von Anwendungsfällen über Plug-in-Storage-Engines wie InnoDB, MyRocks und Spider zu unterstützen.
    • Eingebaute asynchrone Master/Slave-Replikation
    • Dynamische Spalten, die es verschiedenen Zeilen ermöglichen, unterschiedliche Daten in derselben Spalte zu speichern
    • Integrierte Verschlüsselung
    • Suchanfragenoptimierung
    • Verbesserte Schemakompatibilität
  • MariaDB-Cluster: MariaDB Cluster wurde für die heutigen Cloud-basierten Umgebungen entwickelt. Es ist vollständig lese- und schreibskalierbar, verfügt über eine synchrone Replikation, ermöglicht Multi-Master-Topologien und garantiert keine Verzögerung oder verlorene Transaktionen.
    • Synchrone Replikation ohne Slave-Verzögerung oder verlorene Transaktionen
    • Aktiv-Aktiv-Multi-Master-Topologie
    • Lesen und schreiben Sie auf jedem Cluster-Knoten
    • Automatische Mitgliedschaftskontrolle, wobei fehlerhafte Knoten aus dem Cluster gelöscht werden
    • Automatischer Knotenbeitritt
    • Echte parallele Replikation auf Zeilenebene
    • Direkte Client-Verbindungen, natives MariaDB-Look-and-Feel
    • Sowohl Lese- als auch Schreibskalierbarkeit
  • MariaDB MaxScale: MariaDB MaxScale ist ein Datenbank-Proxy, der die Hochverfügbarkeit, Skalierbarkeit und Sicherheit von MariaDB Server erweitert und gleichzeitig die Anwendungsentwicklung vereinfacht, indem er von der zugrunde liegenden Datenbankinfrastruktur entkoppelt wird.
    • Umfasst Datenbank-Firewall und DoS-Schutz
    • Lese-Schreib-Aufteilung
    • Datenmaskierung
    • Schemabasiertes Sharding
    • Abfrage-Caching