PostgreSQL 17 sjell përmirësime të mëdha të performancës, rezervë të reja shtesë dhe më shumë

PostgreSQL 17

Siç është paraqitur vit pas viti midis shtatorit dhe tetorit, Është njoftuar lansimi i versionit të ri të PostgreSQL 17 dhe si në të gjitha versionet e mëparshme, Prioriteti mbetet përmirësimi i performancës dhe optimizimet të burimeve, veçanërisht për operacione të tilla si VACUUM, I/O dhe pyetje, ndërsa tipari i ri më i rëndësishëm i këtij versioni është rezervimi në rritje.

Për përdoruesit e biznesit, përditësimi sjell një mori përmirësimesh që thjeshtojnë menaxhimin dhe përdorimin e bazës së të dhënave. Megjithëse PostgreSQL ka qenë historikisht një bazë të dhënash relacionale, ky version zgjeron integrimin e tij me funksionalitetin e avancuar për të punuar me dokumentet JSON, një veçori që zakonisht lidhet me MongoDB Atlas.

Çfarë ka të re në PostgreSQL 17

Në këtë version të ri të PostgreSQL 17 që është paraqitur, a struktura e re e të dhënave në funksionimin VACUUM, e cila redukton konsumin e memories deri në 20 herë, duke lejuar që këto operacione të jenë më të shpejta dhe më efikase për sa i përket burimeve të përbashkëta.

Nga ana e përmirësime të performancës, menaxhim i regjistrave të kthimit të kthimit (WAL) është optimizuar, duke arritur deri në dy herë performancën e shkrimit në sisteme me shumë pyetje të njëkohshme. Është propozuar a Transmetimi i ndërfaqes I/O për të përmirësuar kërkimin vijues dhe përditësimin e statistikave pas kryerjes së operacionit ANALYZE.

Përveç kësaj, përmirësimet janë zbatuar në pyetjet me klauzola "IN". duke përdorur indekset e pemëve B, si dhe është zbatuar ndërtimi paralel i indekseve BRIN, janë optimizuar kontrollet "NOT NULL" dhe është përshpejtuar përpunimi i shprehjeve të zakonshme të tabelës (CTE) dhe për llogaritjet intensive, është inkorporuar SIMD. udhëzime, të tilla si AVX-512, për të shpejtuar operacione të tilla si funksioni `count_bit`.

Një tjetër risi që bie në sy është veçori të reja për JSON, që nga Përdoruesit tani mund të kërkojnë llojet e të dhënave JSON duke përdorur komanda standarde SQL. Kjo është e mundur falë funksionalitetit të ri të tabelës json, i cili transformon të dhënat JSON në një strukturë tabelare. Nga atje, përdoruesit mund të bëjnë pyetje duke përdorur klauzolën FROM në SQL, duke lejuar që të dhënat të kthehen në një format relacional. U shtua funksioni `JSON_TABLE` për të kthyer të dhënat JSON në tabela standarde PostgreSQL.

E funksionalitet të ri rezervë në rritje në PostgreSQL 17 që ju lejon të kopjoni vetëm ndryshimet e bëra që nga kopjimi i fundit e plotë ose në rritje, e cila optimizon përdorimin e gjerësisë së brezit dhe redukton ruajtjen. Megjithëse PostgreSQL tashmë ofronte zgjidhje të tilla si arkivimi WAL, i cili përsëriti regjistrin e shkrimit përpara (WAL) për të ruajtur seksionet e nevojshme të bazës së të dhënave, versioni 17 prezanton për herë të parë një mekanizëm vendas për kryerjen e kopjeve në rritje. Ky sistem jo vetëm që minimizon ndërprerjet gjatë funksionimit duke pasur më pak ndikim në performancën, por gjithashtu redukton ndjeshëm kohën e rikuperimit, një aspekt kyç pasi rikthimi i kopjeve rezervë është zakonisht një proces i ngadaltë dhe shqetësues për përdoruesit.

Implementuar motor i pavarur nga platforma për të përpunuar vetitë lokale, duke lejuar sjellje të qëndrueshme në renditjen e rezultateve të pyetjeve. Ky motor merr parasysh faktorë të tillë si prania e karaktereve speciale dhe ndjeshmëria e rastit kur rendit vlerat. Mekanizmi i riprodhimit logjik tani thjeshton procesin e azhurnimit të bazës së të dhënave pa nevojën për të fshirë lojëra elektronike të riprodhimit logjik ose për të risinkronizuar të dhënat kur migroni në një version të ri.

ndryshime të tjera që bien në sy:

  • Eksportimi i vargjeve të gjata me komandën "COPY" është përshpejtuar deri në dy herë.
  • Kopjimi i optimizuar kur kodimet e burimit dhe destinacionit përputhen.
  • Opsioni "ON_ERROR" është shtuar për të lejuar vazhdimin e importit pavarësisht gabimeve gjatë futjes së të dhënave.
  • U shtua aftësia për të përdorur kolona me identifikues unikë në tabela të ndara.
  • Zbatoi një veçori dështimi për të kaluar në një server rezervë në konfigurime tolerante ndaj gabimeve.
  • U shtua një mjet i ri pg_createsubscriber për të kthyer një kopje fizike në një kopje logjike.
  • Prezantoi opsionin "sslnegotiation" për të negociuar lidhje të sigurta TLS drejtpërdrejt duke përdorur shtesën ALPN TLS.
  • U shtua roli i paracaktuar pg_maintain, i cili u jep përdoruesve të drejtën për të kryer operacione në lidhje me mirëmbajtjen e DBMS

Së fundi, nëse jeni të interesuar të dini më shumë për të, mund të konsultoheni me detajet Në lidhjen vijuese.


Shto si burim të preferuar në Google