PostgreSQL 13-Veröffentlichung

Nach einem Jahr Entwicklung herausgegeben von neuer stabiler Zweig des DBMS PostgreSQL 13. Updates für neuen Zweig wird rauskommen für fünf Jahre bis November 2025.

Haupt- Innovationen:

  • Umgesetzt Deduplizierung Datensätze in B-Tree-Indizes, was es ermöglichte, die Abfrageleistung zu verbessern und den Speicherplatzverbrauch bei der Indizierung von Datensätzen mit doppelten Daten zu reduzieren. Die Deduplizierung erfolgt durch den regelmäßigen Start eines Handlers, der Gruppen sich wiederholender Tupel zusammenführt und Duplikate durch Links zu einer gespeicherten Kopie ersetzt.
  • Verbesserte Leistung von Abfragen, die verwenden Aggregatfunktionen, gruppierte Sätze (GRUPPIERUNGSSÄTZE) oder partitioniert (partitionierte) Tabellen. Bei Optimierungen werden beim Aggregieren Hashes anstelle tatsächlicher Daten verwendet, wodurch vermieden wird, dass bei der Verarbeitung großer Abfragen alle Daten im Speicher abgelegt werden. Beim Partitionieren wurde die Anzahl der Situationen, in denen Partitionen verworfen oder zusammengeführt werden können, erweitert.
  • Die Fähigkeit zur Verwendung wurde hinzugefügt Erweiterte StatistikenWird mit dem Befehl CREATE STATISTICS erstellt, um die Planungseffizienz von Abfragen zu verbessern, die OR-Bedingungen oder Listensuchen mit IN- oder ANY-Ausdrücken enthalten.
  • Die Reinigung der Indizes während des Betriebs wurde beschleunigt VACUUM durch Parallelisierung der Garbage Collection in Indizes. Mithilfe des neuen Parameters „PARALLEL“ kann der Administrator die Anzahl der Threads bestimmen, die gleichzeitig für VACUUM ausgeführt werden. Es wurde die Möglichkeit hinzugefügt, die automatische VACUUM-Ausführung nach dem Einfügen von Daten zu initiieren.
  • Unterstützung für inkrementelle Sortierung hinzugefügt, die es Ihnen ermöglicht, in der vorherigen Stufe sortierte Daten zu verwenden, um die Sortierung in nachfolgenden Stufen der Abfrageverarbeitung zu beschleunigen. Um die neue Optimierung im Abfrageplaner zu aktivieren, gibt es eine Einstellung „enable_incremental_sort", das standardmäßig aktiviert ist.
  • Es wurde die Möglichkeit hinzugefügt, die Größe zu begrenzen ReplikationsslotsDadurch können Sie automatisch die Beibehaltung von WAL-Segmenten (Write Lazy Log) garantieren, bis sie von allen Backup-Servern empfangen werden, die Replikate empfangen. Replikationsslots verhindern außerdem, dass der Primärserver Zeilen löscht, die zu Konflikten führen könnten, selbst wenn der Sicherungsserver offline ist. Verwendung des Parameters max_slot_wal_keep_size Sie können jetzt die maximale Größe von WAL-Dateien begrenzen, um zu verhindern, dass Ihnen der Speicherplatz ausgeht.
  • Die Möglichkeiten zur Überwachung der DBMS-Aktivität wurden erweitert: Der Befehl EXPLAIN ermöglicht die Anzeige zusätzlicher Statistiken zur Nutzung des WAL-Protokolls; V pg_basebackup Bereitstellung der Möglichkeit, den Status kontinuierlicher Backups zu verfolgen; Der Befehl ANALYZE liefert einen Hinweis auf den Fortschritt des Vorgangs.
  • Neuer Befehl hinzugefügt pg_verifybackup um die Integrität von Backups zu überprüfen, die mit dem Befehl pg_basebackup erstellt wurden.
  • Bei der Arbeit mit JSON unter Verwendung von Operatoren jsonpath Ermöglicht die Verwendung der datetime()-Funktion zum Konvertieren von Zeitformaten (ISO 8601-Zeichenfolgen und native PostgreSQL-Zeittypen). Beispielsweise können Sie die Konstruktionen „jsonb_path_query('[“2015-8-1“, „2015-08-12“]‘, ‚$[*] ? (@.datetime() < „2015-08-2“ verwenden ".datetime ())')" und "jsonb_path_query_array('["12:30", "18:40"]', '$[*].datetime("HH24:MI")')".
  • Integrierte Funktion hinzugefügt gen_random_uuid () um UUID v4 zu generieren.
  • Das Partitionierungssystem bietet volle Unterstützung für die logische Replikation und die durch den Ausdruck „BEFORE“ angegebenen
    Trigger, die auf Zeilenebene funktionieren.

  • Syntax "Zuerst abholen" Ermöglicht jetzt die Verwendung eines „WITH TIES“-Ausdrucks, um zusätzliche Zeilen zurückzugeben, die sich am Ende der Ergebnismenge befinden, die nach der Anwendung von „ORDER BY“ erhalten wurde.
  • Implementierung des Konzepts vertrauenswürdiger Add-ons („vertrauenswürdige Erweiterung"), das von normalen Benutzern installiert werden kann, die keine DBMS-Administratorrechte haben. Die Liste solcher Add-ons ist zunächst vordefiniert und kann vom Superuser erweitert werden. Zu den vertrauenswürdigen Add-ons gehören pgcrypto, Tischfunktion, hstore usw.
  • Der Mechanismus zum Verbinden externer Tabellen Foreign Data Wrapper (postgres_fdw) implementiert die Unterstützung der zertifikatbasierten Authentifizierung. Bei Verwendung der SCRAM-Authentifizierung dürfen Clients Folgendes anfordern:Kanalbindung"(Kanalbindung).

Source: opennet.ru

Kommentar hinzufügen