PostgreSQL 16 vine cu îmbunătățiri de performanță, funcții și multe altele

PostgreSQL

PostgreSQL, numit și Postgres, este un sistem de gestionare a bazelor de date relaționale cu sursă deschisă, orientat pe obiecte.

După 11 luni de dezvoltare, a fost anunțată lansarea noii versiuni de PostgreSQL 16. Această nouă ramură stabilă a SGBD va primi actualizări timp de cinci ani, până în noiembrie 2028. De asemenea, marchează sfârșitul ramurii PostgreSQL 11.x, cea mai veche ramură suportată în prezent, care va fi întreruptă pe 9 noiembrie.

Pentru cei care încă nu sunt familiarizați cu PostgreSQL, este cunoscut și sub numele de Postgres și este un sistem de gestionare a bazelor de date relaționale (RDBMS) gratuit, open-source, care își propune să ofere o bază de date bazată pe extensibilitate și conformitate cu standardele tehnice.

Principalele caracteristici noi ale PostgreSQL 16

Această nouă versiune de PostgreSQL 16 dispune de instrumente extinse de control al accesului pentru replicarea logică. De exemplu, a fost adăugată o nouă funcție predefinită, „pg_create_subscription”, care permite utilizatorilor să primească dreptul de a crea noi abonamente.

Suport pentru echilibrarea încărcării a fost adăugat pe partea de client folosind biblioteca standard libpq. Echilibrarea încărcării permite clientului să se conecteze la diferite gazde, care pot fi selectate într-o ordine specifică sau aleatorie. Dacă gazda nu este disponibilă, se încearcă o conexiune la un alt server. Odată ce conexiunea este stabilită, cererile din cadrul sesiunii sunt trimise către serverul selectat.

În plus, au fost făcute optimizări și funcționarea planificatorului de interogări a fost îmbunătățită, deoarece oferă paralelizarea operațiunilor de unire a tabelelor » FULLY » și » RIGHT JOIN »

În PostgreSQL 16, găsim și suport extins pentru locale-ul „Collation” , care vă permite să setați reguli de sortare și metode de comparare pe baza semnificației caracterelor. În mod implicit, acum se compilează cu locale-urile ICU în loc de locale-ul libc.

Performanța replicării logice a fost îmbunătățită , deoarece a fost implementată capacitatea de a utiliza procesoare care rulează concurent , pe lângă posibilitatea de a utiliza indexuri B-tree pentru tabele fără chei primare, ceea ce elimină necesitatea scanării secvențiale la căutarea înregistrărilor, iar sincronizarea inițială a unor tabele în format binar a fost, de asemenea, accelerată.

O altă îmbunătățire a mecanismului de replicare logică este aceea că permite acum transmiterea modificărilor aduse bazei de date la adăugarea, ștergerea sau actualizarea înregistrărilor către un alt server; acesta a fost extins cu capacitatea de a replica modificările de pe un server de rezervă.

De asemenea, a fost adăugat suport pentru replicarea logică bidirecțională a tabelelor , permițând sincronizarea modificărilor între două tabele de pe servere diferite. Capacitățile de replicare adăugate la PostgreSQL 16 permit crearea de configurații multi-server (mod activ-activ), unde operațiunile INSERT, UPDATE și DELETE pot fi efectuate simultan.

Alte schimbări notabile includ:

  • S-a optimizat utilizarea operațiunilor „RIGHT JOIN” și „OUTER JOIN” pentru a găsi rânduri care nu sunt în tabelul îmbinat („anti-join”).
  • Eficiență îmbunătățită a planului de optimizare pentru interogările care utilizează funcții agregate în combinație cu clauze DISTINCT sau ORDER BY.
  • Sortarea incrementală este utilizată pentru a accelera interogările SELECT DISTINCT.
    Strategia de operare VACUUM a fost îmbunătățită pentru a reduce numărul de situații care necesită blocarea întregii mese.
  • Pe arhitecturile x86 și ARM, instrucțiunile procesorului vectorial (SIMD) sunt implementate pentru a accelera procesarea șirurilor ASCII, operațiunile pe date JSON și efectuarea de căutări și subtranzacții de matrice.
  • Modulul „auto_explain” include acum suport pentru valorile de jurnalizare transmise interogărilor parametrizate.
  • S-a îmbunătățit acuratețea algoritmului de urmărire a solicitărilor utilizat în vizualizările pg_stat_statements și pg_stat_activity.
  • Capacitățile de monitorizare a performanței DBMS au fost extinse. S-a adăugat o vizualizare a serviciului » pg_stat_io » cu statistici care reflectă încărcarea sistemului I/O de către diverse backend (lucrător de fundal, autovacuum etc.) și obiecte.
  • Un câmp nou a fost adăugat la vizualizarea serviciului » pg_stat_all_tables » cu informații despre ora ultimei scanări a unui tabel sau index.

În final, dacă sunteți interesați să aflați mai multe, puteți găsi detalii la linkul următor.


Adăugați ca sursă preferată în Google