PostgreSQL 15 izdanje

Nakon godinu dana razvoja, objavljena je nova stabilna grana PostgreSQL 15 DBMS-a. Ažuriranja za novu granu će biti objavljena tokom pet godina do novembra 2027. godine.

Glavne inovacije:

  • Dodata podrška za SQL naredbu "MERGE", koja liči na izraz "INSERT ... ON CONFLICT". MERGE vam omogućava kreiranje uvjetnih SQL izraza koji kombiniraju INSERT, UPDATE i DELETE operacije u jedan izraz. Na primjer, koristeći MERGE, možete spojiti dvije tabele umetanjem zapisa koji nedostaju i ažuriranjem postojećih. STOPAJTE U korisnički_račun ca KORIŠĆENJEM recent_transactions t ON t.customer_id = ca.customer_id KADA SE UPORABLJA ONDA AŽURIRAJ POSTAVI saldo = saldo + transakcijska_vrijednost KADA SE NE PODARUJE ONDA UMETNI (korisnički_id, stanje) VRIJEDNOSTI (t.value.transaction_id);
  • Algoritmi za sortiranje podataka u memoriji i na disku su značajno poboljšani. Ovisno o vrsti podataka, testovi pokazuju povećanje brzine sortiranja od 25% do 400%.
  • Funkcije prozora koje koriste row_number(), rank(), dense_rank() i count() su ubrzane.
  • Implementirana je mogućnost paralelnog izvršavanja upita sa izrazom “SELECT DISTINCT”.
  • Mehanizam za povezivanje eksternih tabela Foreign Data Wrapper (postgres_fdw) implementira podršku za asinhrono urezivanje uz prethodno dodatu mogućnost asinhrone obrade zahteva ka spoljnim serverima.
  • Dodata je mogućnost korištenja LZ4 i Zstandard (zstd) algoritama za komprimiranje WAL dnevnika transakcija, što, pod nekim radnim opterećenjima, može istovremeno poboljšati performanse i uštedjeti prostor na disku. Kako bi se smanjilo vrijeme oporavka nakon kvara, dodana je podrška za proaktivno preuzimanje stranica koje se pojavljuju u WAL dnevniku.
  • Uslužni program pg_basebackup je dodao podršku za kompresiju rezervnih kopija na strani servera koristeći metode gzip, LZ4 ili zstd. Moguće je koristiti vlastite module za arhiviranje, što vam omogućava da radite bez potrebe za pokretanjem shell komandi.
  • Dodan je niz novih funkcija za obradu stringova pomoću regularnih izraza: regexp_count(), regexp_instr(), regexp_like() i regexp_substr().
  • Mogućnost agregiranja tipova više opsega (“multirange”) dodata je funkciji range_agg().
  • Dodan režim security_invoker, koji vam omogućava da kreirate poglede koji se pokreću kao korisnik koji poziva, a ne kao kreator pogleda.
  • Za logičku replikaciju, implementirana je podrška za filtriranje redova i određivanje lista kolona, ​​što omogućava pošiljaocu da izabere podskup podataka iz tabele za replikaciju. Osim toga, nova verzija pojednostavljuje upravljanje konfliktima, na primjer, sada je moguće preskočiti konfliktne transakcije i automatski onemogućiti pretplatu kada se otkrije greška. Logička replikacija dozvoljava upotrebu dvofaznih urezivanja (2PC).
  • Dodan je novi format dnevnika - jsonlog, koji sprema informacije u strukturiranom obliku koristeći JSON format.
  • Administrator ima mogućnost da delegira pojedinačna prava korisnicima za promjenu određenih konfiguracijskih parametara PostgreSQL servera.
  • psql uslužni program je dodao podršku za pretraživanje informacija o postavkama (pg_settings) pomoću naredbe “\dconfig”.
  • Osigurano je korištenje dijeljene memorije za prikupljanje statistike o radu servera, što omogućava da se riješite odvojenog procesa prikupljanja statistike i periodičnog resetiranja stanja na disk.
  • Omogućena je mogućnost korištenja zadanih lokalizacija ICU "ICU Collation"; ranije su se samo libc lokalizacije mogle koristiti kao zadani lokal.
  • Predložena je ugrađena ekstenzija pg_walinspect, koja vam omogućava da pregledate sadržaj datoteka sa WAL evidencijama koristeći SQL upite.
  • Za javnu shemu, svim korisnicima, s izuzetkom vlasnika baze podataka, je opozvano ovlaštenje za izvršavanje naredbe CREATE.
  • Podrška za Python 2 je uklonjena u PL/Python-u. Zastarjeli ekskluzivni backup mod je uklonjen.

Dodatak: Od 19:00 do 20:00 (MSK) održat će se webinar o promjenama u novoj verziji sa Pavelom Luzanovim (Postgres Professional). Za one koji nisu u mogućnosti da se pridruže emitovanju, otvoreno je snimanje Pavelovog junskog izvještaja „PostgreSQL 15: MERGE and more“ na PGConf.Russia.

izvor: opennet.ru

Dodajte komentar