Lansarea SGBD-ului PostgreSQL 13

După un an de dezvoltare publicată noua ramură stabilă a SGBD-ului PostgreSQL 13. Actualizări pentru noua ramură vor fi lansate pe o perioadă de cinci ani până în noiembrie 2025.

Principalele noutăți:

  • Implementată deduplicarea înregistrărilor din indecșii B-tree, care a permis creșterea performanței interogărilor și reducerea consumului de spațiu pe disc în timpul indecșierii înregistrărilor cu date redundante. Deduplicarea se realizează prin lansarea periodică a unui procesor care efectuează fuziunea grupurilor de tuple redundante și înlocuirea duplicatelor cu referințe la o copie stocată.
  • A fost îmbunătățită performanța interogărilor care utilizează funcții agregate, seturi grupate (GROUPING SETS) sau tabele secționate (partiționate). Optimizările sunt legate de utilizarea hash-urilor în locul datelor efective la agregare, ceea ce permite evitarea plasării tuturor datelor în memorie în timpul procesării interogărilor mari. La partiționare, au fost extinse situațiile în care secțiunile pot fi abandonate sau combinate.
  • A fost adăugată posibilitatea de a folosi statisticilor extinse, generate prin utilizarea comenzii „CREATE STATISTICS”, pentru a îmbunătăți eficiența planificării interogărilor care conțin condiții „OR” sau căutări în liste utilizând expresii „IN” sau „ANY”.
  • A fost accelerată curățarea indecșilor în timpul operației VACUUM datorită paralelizării colectării deșeurilor în indecși. Cu ajutorul noului parametru „PARALLEL”, administratorul poate stabili numărul de fire care vor fi lansate simultan pentru VACUUM. A fost adăugată posibilitatea inițierii automată a execuției VACUUM după inserarea datelor.
  • A fost adăugată suportul pentru sortarea incrementală, permițând utilizarea datelor sortate în etapa anterioară pentru a accelera sortarea în etapele ulterioare ale procesării interogării. Pentru a activa noua optimizare în planificatorul de interogări, a fost prevăzută setarea „enable_incremental_sort„, care este activată implicit.
  • A fost adăugată posibilitatea de a limita dimensiunea sloturilor de replicare, care permit în mod automat garantarea menținerii segmentelor jurnalului de scriere amânată (WAL) până când acestea sunt obținute de toate serverele secundare care primesc replici. Sloturile de replicare împiedică, de asemenea, serverul principal să șteargă rândurile care ar putea duce la conflicte, chiar dacă serverul secundar este deconectat. Cu ajutorul parametrului max_slot_wal_keep_size Acum se poate limita dimensiunea maximă a fișierelor WAL pentru a preveni epuizarea spațiului pe disc.
  • Au fost extinse capacitățile de monitorizare a activității SGBD-ului: în comanda EXPLAIN se afișează statistici suplimentare privind utilizarea jurnalului WAL; în pg_basebackup s-a oferit posibilitatea de a urmări starea execuției backup-urilor continue; în comanda ANALYZE a fost implementată indicarea progresului în execuția operației.
  • A fost adăugată o nouă comandă pg_verifybackup pentru verificarea integrității backup-urilor create de comanda pg_basebackup.
  • Când se lucrează cu JSON folosind operatorii jsonpath este permisă utilizarea funcției datetime() pentru a transforma formatele de timp (șiruri ISO 8601 și tipuri native de timp PostgreSQL). De exemplu, se pot folosi construcții precum „jsonb_path_query(‘["2015-8-1", "2015-08-12"]’, ‘$[*] ? (@.datetime() < "2015-08-2".datetime())')" și "jsonb_path_query_array('["12:30", "18:40"]', '$[*].datetime("HH24:MI")')".
  • A fost adăugată funcția încorporată gen_random_uuid() pentru generarea identificatorilor UUID v4.
  • În sistemul de partiționare, s-a implementat suport complet pentru replicarea logică și pentru trigger-ele definite prin expresia „BEFORE”
    , care funcționează la nivel de rânduri.
  • Sintaxa „FETCH FIRST” permite acum utilizarea expresiei „WITH TIES”, care permite returnarea unor rânduri suplimentare aflate la finalul setului de rezultate obținut după aplicarea „ORDER BY”.
  • A fost implementat conceptul de extensii de încredere („trusted extension”), care pot fi instalate de utilizatori obișnuiți, fără privilegii de administrator SGBD. Lista acestor extensii este prestabilită și poate fi extinsă de superutilizator. Printre extensiile de încredere se numără pgcrypto, tablefunc, hstore etc.
  • În mecanismul de conectare a tabelelor externe Foreign Data Wrapper (postgres_fdw) a fost implementat suportul pentru autentificarea bazată pe certificate. Când se folosește autentificarea SCRAM, clienții au permisiunea de a solicita „legătura canalului” (channel binding).

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster