PostgreSQL 13 DBMS-release

Na een jaar van ontwikkeling gepubliceerd nieuwe stabiele tak van het DBMS PostgreSQL 13. Updates voor nieuwe vestiging zal uitkomen voor vijf jaar tot november 2025.

De belangrijkste innovaties:

  • Geïmplementeerd ontdubbeling records in B-tree-indexen, waardoor het mogelijk werd de queryprestaties te verbeteren en het schijfruimteverbruik te verminderen bij het indexeren van records met dubbele gegevens. Deduplicatie wordt uitgevoerd door periodieke lancering van een handler die groepen zich herhalende tupels samenvoegt en duplicaten vervangt door koppelingen naar één opgeslagen kopie.
  • Verbeterde prestaties van query's die gebruikmaken van geaggregeerde functies, gegroepeerde sets (GROEPERINGSSETS) of gepartitioneerd (gepartitioneerde) tabellen. Bij optimalisaties wordt bij het aggregeren gebruik gemaakt van hashes in plaats van daadwerkelijke gegevens, waardoor wordt voorkomen dat alle gegevens in het geheugen worden opgeslagen bij het verwerken van grote zoekopdrachten. Bij het partitioneren is het aantal situaties waarin partities kunnen worden weggegooid of samengevoegd, uitgebreid.
  • De mogelijkheid om te gebruiken toegevoegd geavanceerde statistiekengemaakt met behulp van de opdracht CREATE STATISTICS om de planningsefficiëntie te verbeteren van query's die OR-voorwaarden bevatten of lijstzoekopdrachten met behulp van IN- of ANY-expressies.
  • Het reinigen van indexen tijdens bedrijf is versneld VACUÜM door de garbagecollection in indexen te parallelliseren. Met behulp van de nieuwe parameter "PARALLEL" kan de beheerder het aantal threads bepalen dat gelijktijdig wordt uitgevoerd voor VACUUM. De mogelijkheid toegevoegd om automatische VACUUM-uitvoering te initiëren na het invoegen van gegevens.
  • Ondersteuning toegevoegd voor incrementeel sorteren, waardoor u gegevens kunt gebruiken die in de vorige fase zijn gesorteerd, om het sorteren in volgende fasen van de queryverwerking te versnellen. Om de nieuwe optimalisatie in de queryplanner mogelijk te maken, is er een instelling “enable_incrementeel_sorteren", wat standaard is ingeschakeld.
  • De mogelijkheid toegevoegd om de grootte te beperken replicatieslots, waardoor u automatisch het behoud van WAL-segmenten (Write-Lazy Log) kunt garanderen totdat ze worden ontvangen door alle back-upservers die replica's ontvangen. Replicatieslots voorkomen ook dat de primaire server rijen verwijdert die conflicten kunnen veroorzaken, zelfs als de back-upserver offline is. Met behulp van de parameter max_slot_wal_keep_size U kunt nu de maximale grootte van WAL-bestanden beperken om te voorkomen dat u onvoldoende schijfruimte krijgt.
  • De mogelijkheden voor het monitoren van DBMS-activiteiten zijn uitgebreid: de opdracht EXPLAIN biedt weergave van aanvullende statistieken over het gebruik van het WAL-logboek; V pg_basebackup bood de mogelijkheid om de status van continue back-ups te volgen; Het ANALYZE-commando geeft een indicatie van de voortgang van de bewerking.
  • Nieuwe opdracht toegevoegd pg_verifybackup om de integriteit te controleren van back-ups die zijn gemaakt met de opdracht pg_basebackup.
  • Bij het werken met JSON met behulp van operators jsonpad Hiermee kan de functie datetime() worden gebruikt om tijdnotaties te converteren (ISO 8601-tekenreeksen en native PostgreSQL-tijdtypen). U kunt bijvoorbeeld de constructies "jsonb_path_query('["2015-8-1", "2015-08-12"]', '$[*] ? (@.datetime() < "2015-08-2 gebruiken ".datetime ())')" en "jsonb_path_query_array('["12:30", "18:40"]', '$[*].datetime("HH24:MI")')".
  • Ingebouwde functie toegevoegd gen_random_uuid () om UUID v4 te genereren.
  • Het partitiesysteem biedt volledige ondersteuning voor logische replicatie en de replicatie gespecificeerd door de expressie “BEFORE”.
    triggers die op rijniveau werken.

  • Syntaxis "EERST OPHALEN" staat nu het gebruik van een "WITH TIES"-expressie toe om extra rijen te retourneren die zich aan het einde van de resultatenset bevinden die is verkregen na het toepassen van "ORDER BY".
  • Het concept van betrouwbare add-ons geïmplementeerd (“vertrouwde extensie"), dat kan worden geïnstalleerd door gewone gebruikers die geen DBMS-beheerdersrechten hebben. De lijst met dergelijke add-ons is in eerste instantie vooraf gedefinieerd en kan door de superuser worden uitgebreid. Betrouwbare add-ons zijn onder meer pgcrypto, tafelfunc, winkel etc.
  • Het mechanisme voor het verbinden van externe tabellen Foreign Data Wrapper (postgres_fdw) implementeert ondersteuning voor op certificaten gebaseerde authenticatie. Bij gebruik van SCRAM-authenticatie mogen clients verzoeken om "kanaalbinding"(kanaalbinding).

Bron: opennet.ru

Voeg een reactie