PÄc gada attÄ«stÄ«bas publicÄts jauna stabila PostgreSQL 12 DBVS filiÄle. JaunÄs filiÄles atjauninÄjumi iznÄks piecus gadus lÄ«dz 2024. gada novembrim.
Pievienots atbalsts "Ä£enerÄtÄs kolonnas", kuras vÄrtÄ«ba tiek aprÄÄ·inÄta, pamatojoties uz izteiksmi, kas aptver citu kolonnu vÄrtÄ«bas tajÄ paÅ”Ä tabulÄ (lÄ«dzÄ«gi skatiem, bet atseviŔķÄm kolonnÄm). Ä¢enerÄtÄs kolonnas var bÅ«t divu veidu ā saglabÄtÄs un virtuÄlÄs. PirmajÄ gadÄ«jumÄ vÄrtÄ«bu aprÄÄ·ina brÄ«dÄ«, kad dati tiek pievienoti vai mainÄ«ti, bet otrajÄ gadÄ«jumÄ vÄrtÄ«bu aprÄÄ·ina katrÄ nolasÄ«tajÄ reizÄ, pamatojoties uz citu kolonnu paÅ”reizÄjo stÄvokli. PaÅ”laik PostgreSQL atbalsta tikai saglabÄtÄs Ä£enerÄtÄs kolonnas;
Pievienota iespÄja vaicÄt datus no JSON dokumentiem, izmantojot Ceļa izteiksmes, atgÄdina XPath un definÄts SQL/JSON standartÄ. EsoÅ”ie indeksÄÅ”anas mehÄnismi tiek izmantoti, lai uzlabotu Å”Ädu izteicienu apstrÄdes efektivitÄti dokumentiem, kas glabÄjas JSONB formÄtÄ;
PÄc noklusÄjuma ir iespÄjots JIT (Just-in-Time) kompilators, kura pamatÄ ir LLVM izstrÄde, lai paÄtrinÄtu dažu izteiksmju izpildi SQL vaicÄjumu apstrÄdes laikÄ. PiemÄram, JIT izmanto, lai paÄtrinÄtu izteicienu izpildi WHERE blokos, mÄrÄ·a sarakstos, apkopotÄs izteiksmÄs un dažÄs iekÅ”ÄjÄs operÄcijÄs;
IndeksÄÅ”anas veiktspÄja ir ievÄrojami uzlabota. B-koka indeksi ir optimizÄti darbam vidÄs, kur indeksi bieži mainÄs ā TPC-C testi uzrÄda vispÄrÄju veiktspÄjas pieaugumu un vidÄjo diska vietas patÄriÅa samazinÄjumu par 40%. SamazinÄtas pieskaitÄmÄs izmaksas, Ä£enerÄjot ierakstÄ«Å”anas žurnÄlu (WAL) GiST, GIN un SP-GiST indeksu veidiem. AttiecÄ«bÄ uz GiST ir pievienota iespÄja izveidot iesaiÅojuma indeksus (izmantojot izteiksmi INCLUDE), kas ietver papildu kolonnas. DarbÄ«bÄ IZVEIDOT STATISTIKU Tiek nodroÅ”inÄts atbalsts visbiežÄk sastopamo vÄrtÄ«bu (MCV) statistikai, lai palÄ«dzÄtu Ä£enerÄt optimÄlÄkus vaicÄjumu plÄnus, izmantojot nevienmÄrÄ«gi sadalÄ«tas kolonnas.
SadalÄ«Å”anas ievieÅ”ana ir optimizÄta vaicÄjumiem, kas aptver tabulas ar tÅ«kstoÅ”iem nodalÄ«jumu, bet aprobežojas ar ierobežotas datu apakÅ”kopas atlasi. Ir palielinÄta datu pievienoÅ”anas veiktspÄja sadalÄ«tajÄm tabulÄm, izmantojot INSERT un COPY operÄcijas, kÄ arÄ« ir iespÄjams pievienot jaunas sadaļas, izmantojot āALTER TABLE ATTACH PARTITIONā, nebloÄ·Äjot vaicÄjuma izpildi;
Pievienots atbalsts vispÄrinÄtu tabulas izteiksmju automÄtiskai iekļautai paplaÅ”inÄÅ”anai (KopÄjÄ tabulas izteiksme, CTE), kas ļauj izmantot pagaidu nosauktas rezultÄtu kopas, kas norÄdÄ«tas, izmantojot WITH priekÅ”rakstu. IekļautÄ izvietoÅ”ana var uzlabot vairuma vaicÄjumu veiktspÄju, taÄu paÅ”laik to izmanto tikai nerekursÄ«viem CTE;
Pievienots atbalsts nedeterministisks LokalÄcijas āSalÄ«dzinÄÅ”anaā Ä«paŔības, kas ļauj iestatÄ«t kÄrtoÅ”anas noteikumus un saskaÅoÅ”anas metodes, Åemot vÄrÄ rakstzÄ«mju nozÄ«mi (piemÄram, kÄrtojot digitÄlÄs vÄrtÄ«bas, mÄ«nusa un punkta klÄtbÅ«tne skaitļa priekÅ”Ä un dažÄdi veidi tiek Åemta vÄrÄ pareizrakstÄ«ba, un, salÄ«dzinot, netiek Åemts vÄrÄ rakstzÄ«mju reÄ£istrs un akcenta zÄ«mes klÄtbÅ«tne) ;
Pievienots atbalsts vairÄku faktoru klienta autentifikÄcijai, kurÄ pg_hba.conf var apvienot SSL sertifikÄta autentifikÄciju (clientcert=verify-full) ar papildu autentifikÄcijas metodi, piemÄram, scram-sha-256 autentifikÄcijai;
Pievienots atbalsts sakaru kanÄla Å”ifrÄÅ”anai, autentificÄjot, izmantojot Gssapi, gan klienta, gan servera pusÄ;
Pievienots atbalsts LDAP serveru noteikÅ”anai, pamatojoties uz āDNS SRVā ierakstiem, ja PostgreSQL ir veidots ar OpenLDAP;
Pievienota operÄcija "REINDEKSÄT VIENLAIDÄŖGIĀ» atjaunot indeksus, nebloÄ·Äjot rakstÄ«Å”anas darbÄ«bas indeksÄ;
Pievienota komanda pg_checksums, kas ļauj iespÄjot vai atspÄjot esoÅ”as datu bÄzes datu lapu kontrolsummu pÄrbaudes (iepriekÅ” Ŕī darbÄ«ba tika atbalstÄ«ta tikai datu bÄzes inicializÄcijas laikÄ);
NodroÅ”inÄta progresa indikatora izvade operÄcijÄm CREATE INDEX, REINDEX, CLUSTER, VACUUM FULL un pg_checksums;
Pievienota komanda "IZVEIDOT PIEKÄ»UVES METODIĀ» lai savienotu apdarinÄtÄjus jaunÄm tabulu uzglabÄÅ”anas metodÄm, kas optimizÄtas dažÄdiem specifiskiem uzdevumiem. PaÅ”laik vienÄ«gÄ iebÅ«vÄtÄ tabulas piekļuves metode ir "kaudze";
KonfigurÄcijas fails recovery.conf ir sapludinÄts ar postgresql.conf. KÄ indikatori pÄrejai uz atveseļoÅ”anÄs stÄvokli pÄc neveiksmes, tagad vajadzÄtu izmantojiet recovery.signal un standby.signal failus.