PostgreSQL 13

Am 24. September kündigte das Entwicklungsteam die Veröffentlichung des nächsten Postgresql-Release Nummer 13 an. Das neue Release konzentrierte sich unter anderem auf die Verbesserung der Leistung, die Beschleunigung interner Wartungsdienste und die Vereinfachung der Datenbanküberwachung sowie eine zuverlässigere Systemzugriffskontrolle.

Die Arbeit an der Optimierung der Tabellenindizierung im Hinblick auf die Verarbeitung von Duplikaten zwischen indizierten Daten in binären Indexbäumen wurde fortgesetzt, wodurch nicht nur die Abfrageausführung beschleunigt, sondern auch der vom Index belegte Speicherplatz reduziert werden konnte.
Darüber hinaus wurde ein inkrementeller Sortieralgorithmus hinzugefügt, bei dem das wiederholte Sortieren von bereits in vorherigen Schritten sortierten Daten schneller funktioniert und einige Abfragen durch die Verwendung neuer erweiterter Statistiken (über den Befehl CREATE STATISTICS) bei der Berechnung eines effizienteren Schritts beschleunigt werden können. Schritt-für-Schritt-Plan.
Auch die Ausführung von Abfragen mit aufwändiger Datenaggregation wurde optimiert, indem die Hash-Aggregation stärker genutzt und ein Teil der aggregierten Daten auf die Festplatte verschoben wird, wenn diese nicht in den Arbeitsspeicher passen. Die Geschwindigkeit beim Verbinden von Tabellen, die sich auf verschiedenen Partitionen befinden, nimmt erheblich zu.

Es wurden erhebliche Anstrengungen unternommen, um die Wartung und Verwaltung von Postgresql-Datenbanken zu vereinfachen. Die eingebaute Aufgabe des „Vakuumierens“, also der Nutzung des freien Speicherplatzes nach dem Löschen oder Neuschreiben von Zeilen, kann nun in parallelen Threads ausgeführt werden, und der Administrator hat nun die Möglichkeit, deren Anzahl festzulegen. Darüber hinaus wurden neue Tools zur Überwachung der aktuellen Aktivität der Datenbank hinzugefügt und Fehler bei der Synchronisierung von Voraufzeichnungsprotokollen zwischen Master und Replikaten verhindert, die zu Konflikten führen könnten, wenn Replikate getrennt werden oder die Integrität der Datenbank verletzen könnten verteilte Datenbank, nachdem sie basierend auf Protokolldaten wiederhergestellt wurden.

Unter den Neuerungen für Entwickler ist die Funktion datetime() hervorzuheben, die verschiedene Standardformate für die Zeiterfassung in einen integrierten Postgresql-Typ konvertiert; UUID-Generierungsfunktion v4 sofort verfügbar gen_random_uuid(); Normalisierung der Arbeit mit Unicode; ein flexibleres System zur Verteilung von Tabellendaten auf verbundene Netzwerkknoten der Datenbank mit vollständiger Replikation auf logischer Ebene sowie anderen Änderungen bei Abfragen und neuen Triggern, die für Replikate verfügbar sind.

Die Datenbankzugriffskontrolle gilt als eine der Schlüsselkomponenten des Systems, und die neue Version macht in dieser Hinsicht große Fortschritte. Jetzt kann nur ein privilegierter Benutzer (Superuser) Erweiterungen für die Datenbank installieren. Gleichzeitig können normale Benutzer nur die Erweiterungen installieren, die sie als vertrauenswürdig markiert haben, oder einen kleinen Satz von Erweiterungen, die standardmäßig als vertrauenswürdig gelten (z. B. pgcrypto, tablefunc oder hstore). Bei der Authentifizierung von Benutzern über den SCRAM-Mechanismus (bei der Arbeit über den libpq-Treiber) ist nun „Channel Binding“ erforderlich und die Wrapper-Funktion für Drittdaten postgres_fdw ab Version 13 unterstützt die Zertifikatsautorisierung.

Versionshinweise


Download-Seite

Source: linux.org.ru

Kommentar hinzufügen