PostgreSQL 12 DBMS leidimas

Po metų plėtros paskelbta nauja stabili PostgreSQL 12 DBMS atšaka išeis penkeriems metams iki 2024 m. lapkričio mėn.

pagrindinis naujoves:

  • Pridėtas palaikymas „sugeneruotų stulpelių“, kurios vertė apskaičiuojama remiantis išraiška, apimančia kitų tos pačios lentelės stulpelių reikšmes (panašiai kaip rodiniai, bet atskiriems stulpeliams). Sugeneruoti stulpeliai gali būti dviejų tipų – saugomi ir virtualūs. Pirmuoju atveju vertė apskaičiuojama tuo metu, kai duomenys pridedami arba keičiami, o antruoju atveju vertė apskaičiuojama kiekvieną kartą, atsižvelgiant į esamą kitų stulpelių būseną. Šiuo metu PostgreSQL palaiko tik saugomus sugeneruotus stulpelius;
  • Pridėta galimybė užklausti duomenis iš JSON dokumentų naudojant Kelio išraiškos, primenantis XPath ir apibrėžta SQL/JSON standarte. Esami indeksavimo mechanizmai naudojami siekiant pagerinti tokių JSONB formatu saugomų dokumentų išraiškų apdorojimo efektyvumą;
  • Pagal numatytuosius nustatymus įjungtas yra JIT (Just-in-Time) kompiliatoriaus naudojimas, pagrįstas LLVM plėtra, siekiant pagreitinti kai kurių išraiškų vykdymą apdorojant SQL užklausą. Pavyzdžiui, JIT naudojamas paspartinti išraiškų vykdymą WHERE blokuose, tikslinių sąrašų, apibendrintų išraiškų ir kai kurių vidinių operacijų vykdymą;
  • Indeksavimo našumas žymiai pagerėjo. B-medžio indeksai yra optimizuoti veikti aplinkoje, kurioje indeksai dažnai keičiasi – TPC-C testai rodo bendrą našumo padidėjimą ir 40% vidutinį disko vietos sunaudojimo sumažėjimą. Sumažėjusios papildomos išlaidos generuojant įrašymo į priekį žurnalą (WAL) GiST, GIN ir SP-GiST indekso tipams. GiST buvo pridėta galimybė kurti įvyniojimo indeksus (per INCLUDE išraišką), kuriuose yra papildomų stulpelių. Operacijoje SUKURTI STATISTIKĄ Teikia palaikymą labiausiai paplitusių verčių (MCV) statistikai, kad būtų sukurti optimalesni užklausų planai, kai naudojami netolygiai paskirstyti stulpeliai;
  • Padalijimas yra optimizuotas užklausoms, kurios apima lenteles su tūkstančiais skaidinių, tačiau apsiriboja riboto duomenų pogrupio pasirinkimu. Padidintas duomenų įtraukimo į skaidytas lenteles našumas naudojant INSERT ir COPY operacijas, taip pat galima pridėti naujų skyrių per "ALTER TABLE ATTACH PARTITION" neblokuojant užklausos vykdymo;
  • Pridėtas automatinio eilutinio apibendrintų lentelės išraiškų išplėtimo palaikymas (Bendroji lentelės išraiška, CTE), leidžiantys naudoti laikinus pavadintus rezultatų rinkinius, nurodytus naudojant WITH teiginį. Tiesioginis diegimas gali pagerinti daugumos užklausų našumą, tačiau šiuo metu jis naudojamas tik nerekursyviems CTE;
  • Pridėta parama nedeterministinis „Colation“ lokalės ypatybės, leidžiančios nustatyti rūšiavimo taisykles ir derinimo metodus, atsižvelgiant į simbolių reikšmę (pavyzdžiui, rūšiuojant skaitmenines reikšmes, minuso ir taško buvimą prieš skaičių ir skirtingus tipus atsižvelgiama į rašybą, o lyginant neatsižvelgiama į raidžių ir kirčio ženklo buvimą) ;
  • Pridėtas kelių veiksnių kliento autentifikavimo palaikymas, kai pg_hba.conf galite derinti SSL sertifikato autentifikavimą (clientcert=verify-full) su papildomu autentifikavimo metodu, pvz., scram-sha-256 autentifikavimui;
  • Pridėtas ryšio kanalo šifravimo palaikymas autentifikuojant per Gsapi, tiek kliento, tiek serverio pusėje;
  • Pridėtas LDAP serverių nustatymo pagal „DNS SRV“ įrašus palaikymas, jei PostgreSQL sukurta naudojant OpenLDAP;
  • Pridėta operacija "REINDEKSUOTI TUO pat metu» atkurti indeksus neblokuojant įrašymo į indeksą operacijų;
  • Pridėta komanda pg_checksums, kuri leidžia įjungti arba išjungti esamos duomenų bazės duomenų puslapių kontrolinių sumų tikrinimą (anksčiau ši operacija buvo palaikoma tik inicijuojant duomenų bazę);
  • Pateikta eigos indikatoriaus išvestis operacijoms CREATE INDEX, REINDEX, CLUSTER, VACUUM FULL ir pg_checksums;
  • Pridėta komanda "KURTI PRIEIGOS METODĄ» prijungti tvarkykles naujiems lentelių saugojimo metodams, optimizuotiems įvairioms konkrečioms užduotims. Šiuo metu vienintelis įtaisytas prieigos prie lentelės būdas yra "krūva";
  • Konfigūracijos failas recovery.conf buvo sujungtas su postgresql.conf. Kaip perėjimo į atsigavimo po nesėkmės būseną rodikliai, dabar turėtų naudokite recovery.signal ir standby.signal failus.

Šaltinis: opennet.ru

Добавить комментарий