Eine neue bedeutende Version der Datenbank MariaDB 11 wurde vorgestellt.

Nach 10 Jahren seit der Einführung des 10.x-Zweigs wird mit MariaDB 11.0.0 eine neue Version des Datenbankmanagementsystems vorgestellt, die mehrere bedeutende Verbesserungen und inkompatible Änderungen bietet. Der Branch hat derzeit den Status eines Alpha-Releases und wird für den produktiven Einsatz bereit sein, nachdem Stabilitätsprüfungen abgeschlossen sind. Der nächste bedeutende Branch, MariaDB 12, wird voraussichtlich frühestens in 10 Jahren (im Jahr 2032) erscheinen und enthält ebenfalls inkompatible Änderungen.

Das MariaDB-Projekt ist eine Abspaltung von MySQL, die möglichst die Rückwärtskompatibilität bewahrt und sich durch die Integration zusätzlicher Speicher-Engines sowie erweiterte Funktionen auszeichnet. Die Entwicklung von MariaDB wird von der unabhängigen Organisation MariaDB Foundation geleitet, die einen offenen und transparenten Entwicklungsprozess verfolgt, der nicht von einzelnen Anbietern abhängt. MariaDB ersetzt MySQL in vielen Linux-Distributionen (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) und wird in großen Projekten wie Wikipedia, Google Cloud SQL und Nimbuzz eingesetzt.

Ein wesentliches Verbesserungsmerkmal in der MariaDB 11-Version ist der Wechsel des Abfrageoptimierers zu einem neuen Kostenmodell, das eine genauere Vorhersage der Kosten jedes Ausführungsplans ermöglicht. Obwohl das neue Modell einige Leistungsengpässe beseitigt, könnte es in bestimmten Szenarien suboptimal sein und zu einer Verlangsamung mancher Abfragen führen. Daher wird den Nutzern empfohlen, an Tests teilzunehmen und die Entwickler im Falle von Problemen zu informieren.

Das zuvor verwendete Modell war gut geeignet, um den optimalen Index zu finden, hatte jedoch Probleme mit der Anwendbarkeit von Tabellen-Scans, Index-Scans oder Bereichsabfragen. In dem neuen Modell wurde dieser Nachteil durch eine Änderung des Grundgewichts der Operationen im Speichermotor behoben. Bei der Bewertung der Leistung von Operationen, die von der Geschwindigkeit des Datenträgers abhängen, wie z. B. der sequenziellen Durchsuchung von Datensätzen, wird nun davon ausgegangen, dass die Daten auf einem SSD-Laufwerk gespeichert sind, das Geschwindigkeiten von bis zu 400 MB pro Sekunde bietet. Darüber hinaus wurde das Tuning anderer Gewichtungsparameter des Optimierers durchgeführt, was es beispielsweise ermöglichte, Indizes für „ORDER BY / GROUP BY“-Operationen in Unterabfragen zu nutzen und die Verarbeitung sehr kleiner Tabellen zu beschleunigen.

Es wird darauf hingewiesen, dass das neue Gewichtungsmodell in den folgenden Situationen die Auswahl eines optimaleren Ausführungsplans für Abfragen ermöglicht:

  • Bei Abfragen, die mehr als 2 Tabellen abdecken.
  • Wenn Indizes mit einer großen Anzahl identischer Werte vorhanden sind.
  • Bei der Verwendung von Bereichen, die mehr als 10 % der Tabelle abdecken.
  • Bei komplexen Abfragen, bei denen nicht alle verwendeten Spalten indexiert sind.
  • Wenn Abfragen verwendet werden, die verschiedene Speichermotoren ansprechen (zum Beispiel, wenn in einer Abfrage auf Tabellen in den Engines InnoDB und Memory zugegriffen wird).
  • Bei der Verwendung von FORCE INDEX zur Verbesserung des Abfrageplans.
  • Wenn sich der Abfrageplan bei Verwendung von „ANALYZE TABLE“ verschlechtert.
  • Wenn die Abfrage eine große Anzahl von abgeleiteten Tabellen umfasst (eine hohe Anzahl von verschachtelten SELECTs).
  • Bei der Verwendung von ORDER BY oder GROUP BY-Anweisungen, die unter die Indizes fallen.

Hauptverträglichkeitsprobleme in der MariaDB 11-Serie:

  • SUPER-Rechte ermöglichen nicht mehr die Ausführung von Aktionen, für die separate Privilegien erforderlich sind. Zum Beispiel sind für die Änderung des Formats von Binärprotokollen die Rechte BINLOG ADMIN erforderlich.
  • Die Implementierung des Change Buffers in InnoDB wurde entfernt.
  • innodb_flush_method und innodb_file_per_table wurden als veraltet erklärt.
  • Die Unterstützung von mysql*-Namen wurde als veraltet erklärt.
  • Das Setzen des Parameters explicit_defaults_for_timestamp auf 0 wurde als veraltet erklärt.
  • Symbolische Links zur Kompatibilität mit MySQL wurden in ein separates Paket ausgegliedert.
  • Der Standardwert des Parameters innodb_undo_tablespaces wurde auf 3 geändert.

Quelle: opennet.ru

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Server | ProHoster