PostgreSQL, auch Postgres genannt, ist ein Open-Source-, objektorientiertes relationales Datenbankverwaltungssystem.
Nach 11 Monaten Entwicklung, Der Start der neuen Version von PostgreSQL 16 wurde angekündigt, der als neuer stabiler Zweig des DBMS ankommt und in dem Updates für fünf Jahre, bis November 2028, Darüber hinaus markiert es das Ende des PostgreSQL 11.x-Zweigs, der der älteste aktuelle Zweig mit Unterstützung ist, der am 9. November endet.
Für diejenigen, die mit PostgreSQL noch nicht vertraut sind, sollten Sie wissen, dass es auch als Postgres und bekannt ist Dies ist ein relationales Datenbankverwaltungssystem (RDBMS) kostenlos, Open Source, das darauf abzielt, eine Datenbank anzubieten, die auf Erweiterbarkeit und Einhaltung technischer Standards basiert.
Die wichtigsten neuen Funktionen von PostgreSQL 16
In dieser neuen Version von PostgreSQL 16, die vorgestellt wird, fällt dies auf Die Zugriffskontrolltools für die logische Replikation wurden erweitert. Beispielsweise wurde eine neue vordefinierte Funktion „pg_create_subscription“ hinzugefügt, mit der Sie Benutzern das Recht geben können, neue Abonnements zu erstellen.
Hinzugefügt Unterstützung für Lastausgleich auf der Kundenseite die die Standardbibliothek libpq verwenden, Balancing ermöglicht es dem Client, sich mit verschiedenen Hosts zu verbinden, die in einer bestimmten oder zufälligen Reihenfolge ausgewählt werden können. Wenn der Host nicht verfügbar ist, wird versucht, eine Verbindung zu einem anderen Server herzustellen. Sobald die Verbindung hergestellt ist, werden Anfragen innerhalb der Sitzung an den ausgewählten Server gesendet.
Daneben Es wurden Optimierungen vorgenommen und die Arbeit des Abfrageplaners verbessert, da eine Parallelisierung der Tabellenverknüpfungsoperationen » COMPLETELY » und » RIGHT JOIN » vorgesehen ist
In PostgreSQL 16 können wir das auch finden erweiterte Unterstützung für lokale „Collation“-Eigenschaften, die es ermöglicht, Klassifizierungsregeln und Vergleichsmethoden unter Berücksichtigung der Bedeutung der Zeichen festzulegen. Standardmäßig wird es jetzt mit ICU-Gebietsschemas anstelle des libc-Gebietsschemas kompiliert.
Hat verbesserte logische Replikationsleistung, seit der Fähigkeit, gleichzeitig laufende Prozessoren zu nutzen, zusätzlich zur Möglichkeit, B-Tree-Indizes für Tabellen ohne Primärschlüssel zu verwenden, wodurch die Notwendigkeit eines sequentiellen Scannens bei der Suche nach Datensätzen entfällt und auch die anfängliche Synchronisierung einiger Tabellen im Binärformat beschleunigt wurde.
Eine weitere Verbesserung, die der logische Replikationsmechanismus erhalten hat, ist folgende Ermöglicht nun die Übertragung von an der Datenbank vorgenommenen Änderungen Beim Hinzufügen, Löschen oder Aktualisieren von Datensätzen auf einem anderen Server wurde die Funktion um die Möglichkeit erweitert, Änderungen von einem Sicherungsserver zu replizieren.
Auch hinzugefügt Unterstützung für bidirektionale logische Tabellenreplikation, wodurch Änderungen an zwei Tabellen auf verschiedenen Servern synchronisiert werden können. Mit den zu PostgreSQL 16 hinzugefügten Replikationsfunktionen können Sie Konfigurationen mit mehreren aktiven Servern (Aktiv-Aktiv-Modus) erstellen, auf denen Sie gleichzeitig INSERT-, UPDATE- und DELETE-Vorgänge ausführen können.
Der andere Änderungen das fällt auf:
- Die Verwendung der Operationen „RIGHT JOIN“ und „OUTER JOIN“ wurde optimiert, um Zeilen zu finden, die nicht in der verbundenen Tabelle enthalten sind („Anti-Join“).
- Verbesserte Effizienz des Optimierungsplans für Abfragen, die Aggregatfunktionen in Kombination mit DISTINCT- oder ORDER BY-Klauseln verwenden.
- Inkrementelle Sortierung wird verwendet, um SELECT DISTINCT-Abfragen zu beschleunigen.
Die VACUUM-Operationsstrategie wurde verbessert, um die Anzahl der Situationen zu reduzieren, die das Sperren der gesamten Tabelle erfordern. - Auf x86- und ARM-Architekturen werden Vektorprozessoranweisungen (SIMD) implementiert, um die Verarbeitung von ASCII-Zeichenfolgen, Operationen an JSON-Daten sowie die Durchführung von Array-Suchen und Subtransaktionen zu beschleunigen.
- Das Modul „auto_explain“ bietet jetzt Unterstützung für die Protokollierung von Werten, die an parametrisierte Abfragen übergeben werden.
- Die Genauigkeit des in den Ansichten pg_stat_statements und pg_stat_activity verwendeten Anforderungsverfolgungsalgorithmus wurde verbessert.
- Die Möglichkeiten zur Überwachung der DBMS-Leistung wurden erweitert. Eine Serviceansicht » pg_stat_io » mit Statistiken hinzugefügt, die die Belastung des E/A-Systems durch verschiedene Backends (Hintergrundarbeiter, Autovacuum usw.) und Objekte widerspiegeln.
- Der Serviceansicht » pg_stat_all_tables » wurde ein neues Feld mit Informationen zum Zeitpunkt des letzten Scans einer Tabelle oder eines Index hinzugefügt.
schließlich, wenn Sie sind daran interessiert, mehr darüber zu erfahren, Sie können die Details in der überprüfen folgenden Link