PostgreSQL 12 DBMS izdanje

Nakon godinu dana razvoja Objavljeno nova stabilna grana DBMS-a PostgreSQL 12. Ažuriranja za novu granu izaći će na pet godina do studenog 2024.

Glavni inovacije:

  • Dodana podrška za "generirani stupci", čija se vrijednost izračunava na temelju izraza koji pokriva vrijednosti drugih stupaca u istoj tablici (slično pogledima, ali za pojedinačne stupce). Generirani stupci mogu biti dvije vrste - pohranjeni i virtualni. U prvom slučaju, vrijednost se izračunava u trenutku dodavanja ili promjene podataka, au drugom slučaju, vrijednost se izračunava pri svakom čitanju na temelju trenutnog stanja drugih stupaca. Trenutno PostgreSQL podržava samo pohranjene generirane stupce;
  • Dodana mogućnost postavljanja upita podacima iz JSON dokumenata pomoću Izrazi puta, podsjećajući XPath i definiran u SQL/JSON standardu. Postojeći mehanizmi indeksiranja koriste se za poboljšanje učinkovitosti obrade takvih izraza za dokumente pohranjene u JSONB formatu;
  • Prema zadanim postavkama omogućena je upotreba JIT (Just-in-Time) prevoditelja temeljenog na razvoju LLVM-a za ubrzavanje izvršavanja nekih izraza tijekom obrade SQL upita. Na primjer, JIT se koristi za ubrzavanje izvođenja izraza unutar WHERE blokova, ciljnih lista, agregatnih izraza i nekih internih operacija;
  • Performanse indeksiranja značajno su poboljšane. Indeksi B-stabla optimizirani su za rad u okruženjima u kojima se indeksi često mijenjaju - TPC-C testovi pokazuju ukupno povećanje performansi i prosječno smanjenje potrošnje prostora na disku od 40%. Smanjeni troškovi prilikom generiranja zapisnika unaprijed (WAL) za GiST, GIN i SP-GiST vrste indeksa. Za GiST je dodana mogućnost stvaranja indeksa omotača (putem izraza INCLUDE) koji uključuju dodatne stupce. U radu STVARI STATISTIKU Pruža podršku za statistiku najčešće vrijednosti (MCV) za generiranje optimalnijih planova upita kada se koriste neravnomjerno raspoređeni stupci;
  • Implementacija particioniranja optimizirana je za upite koji obuhvaćaju tablice s tisućama particija, ali su ograničeni na odabir ograničenog podskupa podataka. Povećana je izvedba dodavanja podataka u particionirane tablice pomoću operacija INSERT i COPY, a također je moguće dodati nove odjeljke kroz “ALTER TABLE ATTACH PARTITION” bez blokiranja izvršenja upita;
  • Dodana podrška za automatsko inline proširenje generaliziranih tabličnih izraza (Uobičajeni tablični izraz, CTE) koji dopuštaju korištenje privremenih imenovanih skupova rezultata specificiranih pomoću naredbe WITH. Inline implementacija može poboljšati izvedbu većine upita, ali se trenutno koristi samo za nerekurzivne CTE-ove;
  • Dodana podrška nedeterministički svojstva lokalizacije "Collation", koja vam omogućuje postavljanje pravila sortiranja i metoda podudaranja uzimajući u obzir značenje znakova (na primjer, pri sortiranju digitalnih vrijednosti, prisutnost minusa i točke ispred broja i različite vrste vodi se računa o pravopisu, a pri usporedbi se ne uzimaju u obzir velika i velika slova i prisutnost znaka naglaska) ;
  • Dodana podrška za provjeru autentičnosti klijenta s više faktora, u kojoj u pg_hba.conf možete kombinirati provjeru autentičnosti SSL certifikata (clientcert=verify-full) s dodatnom metodom provjere autentičnosti kao što je scram-sha-256 za provjeru autentičnosti;
  • Dodana podrška za enkripciju komunikacijskog kanala pri autentifikaciji putem GSSAPI, i na strani klijenta i na strani poslužitelja;
  • Dodana podrška za određivanje LDAP poslužitelja na temelju “DNS SRV” zapisa ako je PostgreSQL izgrađen s OpenLDAP-om;
  • Dodana operacija "REINDEXIRANJE ISTODOBNO» ponovno izgraditi indekse bez blokiranja operacija pisanja u indeks;
  • Tim je dodan pg_kontrolne sume, koji vam omogućuje da omogućite ili onemogućite provjeru kontrolnih zbrojeva stranica s podacima za postojeću bazu podataka (ranije je ova operacija bila podržana samo tijekom inicijalizacije baze podataka);
  • Osiguran izlaz indikatora napretka za operacije CREATE INDEX, REINDEX, CLUSTER, VACUUM FULL i pg_checksums;
  • Dodana naredba "KREIRAJ METODU PRISTUPA» za povezivanje rukovatelja za nove metode pohrane tablice optimizirane za različite specifične zadatke. Trenutno jedina ugrađena metoda pristupa tablici je "hrpa";
  • Konfiguracijska datoteka recovery.conf spojena je s postgresql.conf. Kao pokazatelji prijelaza u stanje oporavka nakon neuspjeha, sada mora biti koristite datoteke recovery.signal i standby.signal.

Izvor: opennet.ru

Dodajte komentar