Ang PostgreSQL 17 ay nagdadala ng malalaking pagpapahusay sa pagganap, bagong incremental backup at higit pa

PostgreSQL 17

Tulad ng ipinakita taun-taon sa pagitan ng Setyembre at Oktubre, Ang paglulunsad ng bagong bersyon ng PostgreSQL 17 ay inihayag at tulad ng sa lahat ng nakaraang bersyon, Ang priyoridad ay nananatiling pagpapabuti ng pagganap at pag-optimize ng mga mapagkukunan, lalo na para sa mga operasyon tulad ng VACUUM, I/O at mga query, habang ang pinakamahalagang bagong feature ng release na ito ay incremental backup.

Para sa mga gumagamit ng negosyo, ang pag-update ay nagdudulot ng maraming pagpapabuti na nagpapasimple sa pamamahala at paggamit ng database. Bagama't dati nang naging relational database ang PostgreSQL, pinalalawak ng bersyong ito ang pagsasama nito sa advanced functionality para sa pagtatrabaho sa mga dokumento ng JSON, isang feature na karaniwang nauugnay sa MongoDB Atlas.

Ano ang bago sa PostgreSQL 17

Sa bagong bersyon na ito ng PostgreSQL 17 na ipinakita, a bagong istraktura ng data sa pagpapatakbo ng VACUUM, na binabawasan ang pagkonsumo ng memorya ng hanggang 20 beses, na nagpapahintulot sa mga operasyong ito na maging mas mabilis at mas mahusay sa mga tuntunin ng mga nakabahaging mapagkukunan.

Sa bahagi ng Mga pagpapabuti sa pagganap, pamamahala ng write-back log (WAL) ay na-optimize, na nakakamit ng hanggang dalawang beses ang pagganap ng pagsulat sa mga system na may maraming kasabay na mga query. Ito ay iminungkahi a Streaming I/O interface upang mapabuti ang sequential na paghahanap at pag-update ng mga istatistika pagkatapos isagawa ang operasyong ANALYZE.

Bukod diyan, ipinatupad ang mga pagpapabuti sa mga query na may mga sugnay na "IN". sa pamamagitan ng paggamit ng B-tree index, pati na rin ang parallel construction ng BRIN index ay ipinatupad, ang "NOT NULL" na mga tseke ay na-optimize at ang pagproseso ng mga karaniwang table expression (CTE) ay pinabilis at para sa masinsinang kalkulasyon, ay may kasamang SIMD mga tagubilin, gaya ng AVX-512, upang pabilisin ang mga operasyon gaya ng function na `bit_count`.

Ang isa pang bagong bagay na namumukod-tangi ay ang mga bagong feature para sa JSON, mula nang ang Maaari na ngayong i-query ng mga user ang mga uri ng data ng JSON gamit ang mga karaniwang SQL command. Posible ito salamat sa bagong pag-andar ng talahanayan json, na binabago ang data ng JSON sa isang tabular na istraktura. Mula doon, maaaring gumawa ng mga query ang mga user gamit ang sugnay FROM sa SQL, na nagpapahintulot sa data na maibalik sa isang relational na format. Idinagdag ang function na `JSON_TABLE` upang i-convert ang data ng JSON sa mga karaniwang talahanayan ng PostgreSQL.

Ang bagong incremental backup functionality sa PostgreSQL 17 na nagbibigay-daan sa iyo na i-back up lamang ang mga pagbabagong ginawa mula noong huling backup buo o incremental, na nag-o-optimize sa paggamit ng bandwidth at nagpapababa ng storage. Bagama't nag-alok na ang PostgreSQL ng mga solusyon gaya ng WAL Archiving, na kinopya ang write-ahead log (WAL) upang mapanatili ang mga kinakailangang seksyon ng database, ang bersyon 17 ay nagpapakilala sa unang pagkakataon ng isang katutubong mekanismo para sa pagsasagawa ng mga incremental na kopya. Ang system na ito ay hindi lamang nagpapaliit ng mga pagkaantala sa panahon ng operasyon sa pamamagitan ng pagkakaroon ng mas kaunting epekto sa pagganap, ngunit makabuluhang binabawasan din ang mga oras ng pagbawi, isang mahalagang aspeto dahil ang pagpapanumbalik ng mga backup ay karaniwang isang mabagal at nakakabahala na proseso para sa mga user.

Ipinatupad ang platform independent engine upang iproseso ang mga katangian ng lokal, na nagbibigay-daan sa pare-parehong pag-uugali sa pag-order ng mga resulta ng query. Isinasaalang-alang ng engine na ito ang mga salik tulad ng pagkakaroon ng mga espesyal na character at case sensitivity kapag nag-uuri ng mga value. Pinapasimple na ngayon ng mekanismo ng lohikal na pagtitiklop ang proseso ng pag-upgrade ng database nang hindi na kailangang tanggalin ang mga puwang ng lohikal na pagtitiklop o muling i-synchronize ang data kapag lumilipat sa isang bagong bersyon.

Ng iba pang mga pagbabago na namumukod-tangi:

  • Ang pag-export ng mahahabang string gamit ang command na `COPY` ay pinabilis ng hanggang dalawang beses.
  • Naka-optimize na pagkopya kapag nagtutugma ang source at destination encodings.
  • Ang opsyong `ON_ERROR` ay naidagdag upang payagan ang pag-import na magpatuloy sa kabila ng mga error sa pagpasok ng data.
  • Nagdagdag ng kakayahang gumamit ng mga column na may mga natatanging identifier sa mga naka-partition na talahanayan.
  • Nagpatupad ng feature na failover upang lumipat sa isang backup na server sa mga configuration na hindi mapagparaya sa fault.
  • Nagdagdag ng bagong pg_createsubscriber utility upang i-convert ang isang pisikal na replika sa isang lohikal na replika.
  • Ipinakilala ang opsyong "sslnegotiation" upang direktang makipag-ayos ng mga secure na koneksyon sa TLS gamit ang extension ng ALPN TLS.
  • Nagdagdag ng paunang natukoy na tungkulin pg_maintain, na nagbibigay sa mga user ng karapatang magsagawa ng mga operasyong nauugnay sa pagpapanatili ng DBMS

Panghuli, kung interesado kang malaman ang tungkol dito, maaari kang kumunsulta sa mga detalye Sa sumusunod na link.


Idagdag bilang ginustong mapagkukunan sa Google