Kuten joka vuosi syys-lokakuun välisenä aikana, uuden PostgreSQL 17 -version julkaisu on julkistettu . Kuten kaikkien aiempien versioiden kohdalla, prioriteettina on edelleen suorituskyvyn parantaminen ja resurssien optimointi, erityisesti toiminnoille, kuten VACUUM, I/O ja kyselyt. Tämän julkaisun tärkein uusi ominaisuus on inkrementaalinen varmuuskopiointi.
Yrityskäyttäjille päivitys tuo joukon parannuksia, jotka yksinkertaistavat tietokannan hallintaa ja käyttöä. Vaikka PostgreSQL on perinteisesti ollut relaatiotietokanta, tämä versio laajentaa sen integrointia edistyneillä toiminnoilla työskennelläkseen JSON-dokumenttien kanssa, ominaisuus, joka liittyy yleisesti MongoDB Atlasiin.
Mitä uutta PostgreSQL 17:ssä
Tässä uudessa PostgreSQL 17 -versiossa on otettu käyttöön uusi VACUUM-operaation tietorakenne, joka vähentää muistin kulutusta jopa 20-kertaisesti, mikä mahdollistaa näiden operaatioiden nopeamman ja tehokkaamman jaettujen resurssien käytön.
Suorituskyvyn parannusten osalta kirjoitusrekisterien (WAL) hallintaa on optimoitu, mikä on jopa kaksinkertainen kirjoitusteho järjestelmissä, joissa on useita samanaikaisia kyselyitä. Suoratoisto-I/O-rajapintaa on ehdotettu parantamaan peräkkäistä hakua ja tilastopäivityksiä ANALYZE-operaation jälkeen.
Lisäksi on parannettu "IN"-lausekkeita sisältäviä kyselyitä B-puuindeksejä käytettäessä, sekä BRIN-indeksien rinnakkaista rakentamista, "NOT NULL" -tarkistusten optimointia ja yleisten taulukkolausekkeiden (CTE) käsittelyn nopeuttamista. Intensiivisiä laskutoimituksia varten on sisällytetty SIMD-käskyjä, kuten AVX-512, operaatioiden, kuten `bit_count`-funktion, nopeuttamiseksi.
Toinen erottuva uutuus on uusia ominaisuuksia JSONille, koska Käyttäjät voivat nyt tehdä kyselyjä JSON-tietotyypeistä käyttämällä tavallisia SQL-komentoja. Tämä on mahdollista uuden pöytätoiminnon ansiosta json, joka muuntaa JSON-tiedot taulukkorakenteeksi. Sieltä käyttäjät voivat tehdä kyselyitä lausekkeen avulla FROM SQL:ssä, jolloin tiedot voidaan palauttaa relaatiomuodossa. Lisätty JSON_TABLE-toiminto JSON-tietojen muuntamiseksi tavallisiksi PostgreSQL-taulukoiksi.
Huomionarvoista on myös PostgreSQL 17:n uusi inkrementaalinen varmuuskopiointitoiminto , jonka avulla voit varmuuskopioida vain viimeisimmän täyden tai inkrementaalisen varmuuskopioinnin jälkeen tehdyt muutokset , mikä optimoi kaistanleveyden käytön ja vähentää tallennusvaatimuksia. Vaikka PostgreSQL tarjosi jo ratkaisuja, kuten WAL Archiving, joka replikoi Write-Ahead Lokin (WAL) ylläpitääkseen tietokannan tarvittavia osia, versio 17 esittelee ensimmäistä kertaa natiivin mekanismin inkrementaalisten varmuuskopioiden suorittamiseen. Tämä järjestelmä ei ainoastaan minimoi toiminnallisia häiriöitä vaikuttamalla vähemmän suorituskykyyn, vaan myös lyhentää merkittävästi palautusaikoja – mikä on keskeinen tekijä, sillä varmuuskopioiden palauttaminen on usein hidas ja turhauttava prosessi käyttäjille.
Alustasta riippumaton moottori otettiin käyttöön kieliasetusten ominaisuuksien käsittelemiseksi, mikä mahdollisti kyselytulosten yhdenmukaisen lajittelun. Tämä moottori ottaa huomioon tekijöitä, kuten erikoismerkkien esiintymisen ja kirjainkoon erottelun arvojen lajittelussa. Looginen replikointimekanismi yksinkertaistaa nyt tietokannan päivitysprosessia, poistamalla tarpeen poistaa loogisen replikoinnin paikkoja tai synkronoida tietoja uudelleen uuteen versioon siirryttäessä.
Muita merkittäviä muutoksia ovat :
- Pitkien merkkijonojen vientiä COPY-komennolla on nopeutettu jopa kaksi kertaa.
- Optimoitu kopiointi, kun lähde- ja kohdekoodaukset vastaavat.
- ON_ERROR-vaihtoehto on lisätty, jotta tuontia voidaan jatkaa tietojen lisäysvirheistä huolimatta.
- Lisätty mahdollisuus käyttää sarakkeita yksilöllisillä tunnisteilla osioiduissa taulukoissa.
- Otettu käyttöön vikasietoominaisuus, jolla vaihdetaan varapalvelimeen vikasietoisissa kokoonpanoissa.
- Lisätty uusi pg_createsubscriber-apuohjelma fyysisen replikan muuntamiseksi loogiseksi replikaksi.
- Otettiin käyttöön "sslnegotiation" -vaihtoehto suojattujen TLS-yhteyksien neuvottelemiseksi suoraan ALPN TLS -laajennuksen avulla.
- Lisätty ennalta määritetty rooli pg_maintain, joka antaa käyttäjille oikeuden suorittaa DBMS-huoltoon liittyviä toimintoja
Lopuksi, jos olet kiinnostunut oppimaan lisää, löydät tiedot seuraavasta linkistä.