PostgreSQL 15 -julkaisu

Vuoden kehitystyön jälkeen PostgreSQL 15 DBMS:n uusi vakaa haara on julkaistu. Uuden haaran päivitykset julkaistaan ​​viiden vuoden aikana marraskuuhun 2027 saakka.

Tärkeimmät innovaatiot:

  • Lisätty tuki SQL-komennolle "MERGE", joka muistuttaa ilmaisua "INSERT ... ON CONFLICT". MERGE:n avulla voit luoda ehdollisia SQL-käskyjä, jotka yhdistävät INSERT-, UPDATE- ja DELETE-toiminnot yhdeksi lausekkeeksi. Esimerkiksi MERGE-toiminnolla voit yhdistää kaksi taulukkoa lisäämällä puuttuvia tietueita ja päivittämällä olemassa olevia. YHDISTÄ asiakastiliin ca KÄYTTÄMÄLLÄ viimeisimmät_tapahtumat t PÄÄLLÄ t.asiakastunnus = ca.asiakkaan_id KUN VASTAA SIIN PÄIVITYS ASETTAA saldo = saldo + tapahtuman_arvo KUN EI OLE TASTA SIIN LISÄÄ (asiakastunnus, saldo) ARVOT (t.asiakastunnus);transaction_id, t.t.
  • Muistissa ja levyllä olevien tietojen lajittelun algoritmeja on parannettu merkittävästi. Tietojen tyypistä riippuen testit osoittavat lajittelunopeuden lisääntyneen 25 prosentista 400 prosenttiin.
  • Ikkunafunktioita, joissa käytetään rivin_numero(), rank(), dense_rank() ja count()-funktioita, on nopeutettu.
  • Mahdollisuus suorittaa rinnakkain kyselyitä lausekkeella "SELECT DISTINCT" on otettu käyttöön.
  • Ulkoisten taulukoiden yhdistämismekanismi Foreign Data Wrapper (postgres_fdw) toteuttaa tuen asynkronisille toimituksille sen lisäksi, että aiemmin lisätty mahdollisuus käsitellä asynkronisesti pyyntöjä ulkoisille palvelimille.
  • Lisätty mahdollisuus käyttää LZ4- ja Zstandard (zstd) -algoritmeja WAL-tapahtumalokien pakkaamiseen, mikä joissakin työkuormissa voi samanaikaisesti parantaa suorituskykyä ja säästää levytilaa. Toipumisajan lyhentämiseksi vian jälkeen on lisätty tuki WAL-lokissa näkyvien sivujen ennakoivalle haulle.
  • pg_basebackup-apuohjelma on lisännyt tuen varmuuskopiotiedostojen palvelinpuolen pakkaamiseen gzip-, LZ4- tai zstd-menetelmillä. Arkistointiin on mahdollista käyttää omia moduuleja, jolloin ei tarvitse suorittaa shell-komentoja.
  • Sarja uusia toimintoja on lisätty merkkijonojen käsittelyyn säännöllisten lausekkeiden avulla: regexp_count(), regexp_instr(), regexp_like() ja regexp_substr().
  • Mahdollisuus koota monialuetyyppejä ("multirange") on lisätty range_agg()-funktioon.
  • Lisätty security_invoker-tila, jonka avulla voit luoda näkymiä, jotka toimivat kutsuvana käyttäjänä näkymän luojana.
  • Loogiseen replikointiin on otettu käyttöön tuki rivien suodattamiselle ja sarakeluetteloiden määrittämiselle, jolloin lähettäjä voi valita taulukosta tietoja replikoitavaksi. Lisäksi uusi versio yksinkertaistaa ristiriitojen hallintaa, esimerkiksi nyt on mahdollista ohittaa ristiriitaiset tapahtumat ja poistaa tilaus automaattisesti käytöstä, kun virhe havaitaan. Looginen replikointi mahdollistaa kaksivaiheisten toimitusten (2PC) käytön.
  • Uusi lokimuoto on lisätty - jsonlog, joka tallentaa tiedot jäsennellyssä muodossa käyttämällä JSON-muotoa.
  • Järjestelmänvalvojalla on mahdollisuus delegoida käyttäjille yksittäisiä oikeuksia muuttaa tiettyjä PostgreSQL-palvelimen kokoonpanoparametreja.
  • Psql-apuohjelma on lisännyt tuen asetustietojen (pg_settings) etsimiseen "\dconfig"-komennolla.
  • Jaetun muistin käyttö varmistetaan tilastojen keräämiseen palvelimen toiminnasta, mikä mahdollistaa erillisen tilastojen keräämisprosessin ja tilan ajoittain nollaamisen levylle.
  • Mahdollisuus käyttää oletusarvoisia ICU-alueita "ICU Collation" on tarjottu; aiemmin vain libc-alueita voitiin käyttää oletuskielinä.
  • On ehdotettu sisäänrakennettua laajennusta pg_walinspect, jonka avulla voit tarkastaa WAL-lokeilla olevien tiedostojen sisällön SQL-kyselyillä.
  • Julkisessa skeemassa kaikilta käyttäjiltä tietokannan omistajaa lukuun ottamatta on peruutettu oikeudet CREATE-komennon suorittamiseen.
  • Python 2:n tuki on poistettu PL/Pythonista. Vanhentunut eksklusiivinen varmuuskopiointitila on poistettu.

Lisäys: Klo 19-00 (MSK) järjestetään webinaari, jossa keskustellaan uuteen versioon tehdyistä muutoksista Pavel Luzanovin (Postgres Professional) kanssa. Niille, jotka eivät voi liittyä lähetykseen, Pavelin kesäkuun raportin ”PostgreSQL 20: MERGE and more” tallennus PGConf.Russiassa on avoinna.

Lähde: opennet.ru

Lisää kommentti