PostgreSQL 12 laidiens

PostgreSQL komanda ir paziņojusi par PostgreSQL 12, atklātā pirmkoda relāciju datu bāzes pārvaldÄ«bas sistēmas jaunākās versijas, izlaiÅ”anu.
PostgreSQL 12 ir ievērojami uzlabojis vaicājumu veiktspēju ā€“ Ä«paÅ”i, strādājot ar lielu datu apjomu, kā arÄ« kopumā optimizējis diska vietas izmantoÅ”anu.

Jaunās funkcijas ietver:

  • JSON Path vaicājumu valodas ievieÅ”ana (svarÄ«gākā SQL/JSON standarta daļa);
  • kopējo tabulu izteiksmju izpildes optimizācija (WITH);
  • atbalsts Ä£enerētajām kolonnām

Kopiena arÄ« turpina strādāt pie PostgreSQL paplaÅ”ināŔanas un uzticamÄ«bas, attÄ«stot atbalstu internacionalizācijai, autentifikācijas iespējām un nodroÅ”inot vienkārŔākus sistēmas administrÄ“Å”anas veidus.

Å ajā laidienā ir iekļauta saskarnes ievieÅ”ana pievienojamiem atmiņas dzinējiem, kas tagad ļauj izstrādātājiem izveidot savas datu glabāŔanas metodes.

Veiktspējas uzlabojumi

PostgreSQL 12 ietver ievērojamus veiktspējas un uzturÄ“Å”anas uzlabojumus indeksÄ“Å”anas un sadalÄ«Å”anas sistēmām.

B-koka indeksi, standarta indeksÄ“Å”anas veids programmā PostgreSQL, ir optimizēti 12. versijā darba slodzēm, kas saistÄ«tas ar biežas indeksa modifikācijām. Izmantojot TPC-C etalonu sistēmai PostgreSQL 12, tika konstatēts vidēji par 40% samazināts vietas lietojums un vispārējais vaicājuma veiktspējas pieaugums.

SadalÄ«to tabulu vaicājumi ir saņēmuÅ”i ievērojamus uzlabojumus, Ä«paÅ”i tabulām, kas sastāv no tÅ«kstoÅ”iem nodalÄ«jumu, kurām nepiecieÅ”ams strādāt tikai ar ierobežotām datu masÄ«vu daļām. Ir uzlabota datu pievienoÅ”anas veiktspēja sadalÄ«tajām tabulām, izmantojot INSERT un COPY, kā arÄ« iespēja pievienot jaunu nodalÄ«jumu, nebloķējot vaicājumus.

PostgreSQL 12 ir veicis papildu uzlabojumus indeksÄ“Å”anā, kas ietekmē vispārējo veiktspēju, tostarp:

  • samazinātas pieskaitāmās izmaksas, Ä£enerējot WAL GiST, GIN un SP-GiST indeksu veidiem;
  • iespēja izveidot tā sauktos seguma indeksus (INCLUDE klauzulu) uz GiST indeksiem;
  • spēja veikt ā€œtuvākā kaimiņaā€ vaicājumus (k-NN meklÄ“Å”ana), izmantojot attāluma operatoru (<->) un izmantojot SP-GiST indeksus;
  • atbalsts izplatÄ«tāko vērtÄ«bu (MCV) statistikas apkopoÅ”anai, izmantojot CREATE STATISTICS, kas palÄ«dz iegÅ«t labākus vaicājumu plānus, izmantojot kolonnas, kuru vērtÄ«bas ir sadalÄ«tas nevienmērÄ«gi.

JIT kompilācija, izmantojot LLVM, kas ieviesta programmā PostgreSQL 11, tagad ir iespējota pēc noklusējuma. JIT kompilācija uzlabo veiktspēju, strādājot ar izteiksmēm WHERE klauzulās, mērÄ·a sarakstos, apkopojumos un dažās iekŔējās operācijās. Tas ir pieejams, ja esat kompilējis PostgreSQL ar LLVM vai izmantojat PostgreSQL pakotni, kas tika izveidota ar iespējotu LLVM.

SQL valodas iespēju un standarta saderības uzlabojumi

PostgreSQL 12 ieviesa iespēju vaicāt JSON dokumentus, izmantojot JSON ceļa izteiksmes, kas definētas SQL/JSON standartā. Šādi vaicājumi var izmantot esoÅ”os JSONB formātā saglabāto dokumentu indeksÄ“Å”anas mehānismus, lai efektÄ«vi izgÅ«tu datus.

Kopējās tabulu izteiksmes, kas pazÄ«stamas arÄ« kā WITH vaicājumi, tagad var automātiski izpildÄ«t, izmantojot aizstāŔanu programmā PostgreSQL 12, kas savukārt var palÄ«dzēt uzlabot daudzu esoÅ”o vaicājumu veiktspēju. Jaunajā versijā WITH vaicājuma aizstāŔanas daļu var izpildÄ«t tikai tad, ja tā nav rekursÄ«va, tai nav blakus efektu un uz to ir atsauce tikai vienu reizi nākamajā vaicājuma daļā.

PostgreSQL 12 ievieÅ” atbalstu "Ä£enerētajām kolonnām". Å is kolonnas veids, kas aprakstÄ«ts SQL standartā, aprēķina vērtÄ«bu, pamatojoties uz citu tās paÅ”as tabulas kolonnu saturu. Å ajā versijā PostgreSQL atbalsta "uzglabātās Ä£enerētās kolonnas", kur aprēķinātā vērtÄ«ba tiek saglabāta diskā.

Internacionalizācija

PostgreSQL 12 paplaÅ”ina atbalstu ICU salÄ«dzinājumiem, ļaujot lietotājiem definēt "nedeterministiskas salÄ«dzināŔanas", kas var, piemēram, ļaut veikt salÄ«dzinājumus bez reÄ£istrjutÄ«gajiem vai akcentiem nejutÄ«giem.

Autentifikācija

PostgreSQL paplaÅ”ina savu atbalstu spēcÄ«gajām autentifikācijas metodēm ar vairākiem uzlabojumiem, kas nodroÅ”ina papildu droŔību un funkcionalitāti. Å ajā laidienā tiek ieviesta klienta un servera puses Å”ifrÄ“Å”ana autentifikācijai, izmantojot GSSAPI saskarnes, kā arÄ« iespēja PostgreSQL atklāt LDAP serverus, kad PostgreSQL tiek kompilēts ar OpenLDAP.

Turklāt PostgreSQL 12 tagad atbalsta vairāku faktoru autentifikācijas opciju. PostgreSQL serveris tagad var pieprasÄ«t klientam nodroÅ”ināt derÄ«gu SSL sertifikātu ar atbilstoÅ”o lietotājvārdu, izmantojot clientcert=verify-full, un apvienot to ar atseviŔķu autentifikācijas metodes prasÄ«bu (piemēram, scram-sha-256).

Administrācija

PostgreSQL 12 ieviesa iespēju veikt nebloķējoÅ”u indeksu pārbÅ«vi, izmantojot komandu REINDEX CONCURRENTLY. Tas ļauj lietotājiem izvairÄ«ties no DBVS dÄ«kstāves ilgstoÅ”as ā€‹ā€‹indeksa atjaunoÅ”anas laikā.

Turklāt programmā PostgreSQL 12 varat iespējot vai atspējot lapu kontrolsummas izslēgÅ”anas klasterÄ«, izmantojot komandu pg_checksums. IepriekÅ” lapu kontrolsummas, lÄ«dzeklis, kas palÄ«dz pārbaudÄ«t diskā saglabāto datu integritāti, varēja iespējot tikai tad, kad PostgreSQL klasteris tika inicializēts, izmantojot initdb.

Avots: linux.org.ru

Pievieno komentāru