PostgreSQL 12 nga pagpagawas

Gipahibalo sa grupo sa PostgreSQL ang pagpagawas sa PostgreSQL 12, ang pinakabag-o nga bersyon sa open source relational database management system.
Ang PostgreSQL 12 labi nga nagpauswag sa pasundayag sa pangutana - labi na kung nagtrabaho uban ang daghang mga volume sa datos, ug na-optimize usab ang paggamit sa espasyo sa disk sa kinatibuk-an.

Ang mga bag-ong bahin naglakip sa:

  • pagpatuman sa JSON Path query language (ang pinaka importante nga bahin sa SQL/JSON standard);
  • pag-optimize sa pagpatuman sa komon nga mga ekspresyon sa lamesa (WITH);
  • suporta alang sa namugna nga mga kolum

Ang komunidad usab nagpadayon sa pagtrabaho sa pagpalapad ug kasaligan sa PostgreSQL, pagpalambo sa suporta alang sa internasyonalisasyon, mga kapabilidad sa pag-authenticate, ug paghatag og mas sayon ​​nga mga paagi sa pagdumala sa sistema.

Kini nga pagpagawas naglakip sa pagpatuman sa usa ka interface alang sa pluggable storage engine, nga karon nagtugot sa mga developers sa paghimo sa ilang kaugalingong mga pamaagi sa pagtipig sa datos.

Pagpalambo sa paghimo

Ang PostgreSQL 12 naglakip sa mahinungdanong performance ug maintenance improvements alang sa indexing ug partitioning systems.

Ang mga indeks sa B-tree, ang standard nga tipo sa pag-indeks sa PostgreSQL, gi-optimize sa bersyon 12 alang sa mga workloads nga naglambigit sa kanunay nga mga pagbag-o sa indeks. Ang paggamit sa TPC-C benchmark para sa PostgreSQL 12 nagpakita sa usa ka average nga 40% nga pagkunhod sa paggamit sa wanang ug usa ka kinatibuk-ang pagtaas sa performance sa pangutana.

Ang mga pangutana batok sa gibahin nga mga lamesa nakadawat og mamatikdan nga mga pag-uswag, ilabi na alang sa mga lamesa nga gilangkuban sa liboan ka mga partisyon nga nagkinahanglan sa pagtrabaho uban sa limitado nga mga bahin sa data arrays. Ang pasundayag sa pagdugang sa datos sa gibahin nga mga lamesa gamit ang INSERT ug COPY gipauswag, ingon man ang abilidad sa pag-attach sa usa ka bag-ong partisyon nga walay pagbabag sa mga pangutana.

Ang PostgreSQL 12 naghimo og dugang nga mga pag-uswag sa pag-indeks nga makaapekto sa kinatibuk-ang pasundayag, lakip ang:

  • gipakunhod ang overhead sa dihang nagmugna og WAL alang sa mga tipo sa indeks sa GiST, GIN ug SP-GIST;
  • ang abilidad sa paghimo sa gitawag nga covering indexes (INCLUDE clause) sa GiST index;
  • ang abilidad sa paghimo sa "labing duol nga silingan" nga mga pangutana (k-NN search) gamit ang distansya nga operator (<->) ug gamit ang SP-GiST index;
  • suporta alang sa pagkolekta sa labing komon nga bili (MCV) nga mga estadistika gamit ang CREATE STATISTICS, nga makatabang sa pagkuha sa mas maayo nga mga plano sa pangutana kung naggamit sa mga kolum kansang mga kantidad dili parehas nga giapod-apod.

Ang JIT compilation gamit ang LLVM, nga gipaila sa PostgreSQL 11, karon gipalihok pinaagi sa default. Ang JIT compilation nagpauswag sa performance kung nagtrabaho uban ang mga ekspresyon sa WHERE clauses, target list, aggregates, ug pipila ka internal nga operasyon. Magamit kini kung imong gihugpong ang PostgreSQL sa LLVM o naggamit sa usa ka PostgreSQL nga pakete nga gitukod gamit ang LLVM nga gipagana.

Mga pag-uswag sa mga kapabilidad sa pinulongang SQL ug standard compatibility

Gipaila sa PostgreSQL 12 ang abilidad sa pagpangutana sa mga dokumento sa JSON gamit ang mga ekspresyon sa agianan sa JSON nga gihubit sa sukaranan sa SQL/JSON. Ang ingon nga mga pangutana mahimo’g magamit ang naglungtad nga mga mekanismo sa pag-indeks alang sa mga dokumento nga gitipigan sa format nga JSONB aron epektibo nga makuha ang datos.

Ang kasagarang mga ekspresyon sa lamesa, nailhan usab nga WITH nga mga pangutana, mahimo na karon nga awtomatiko nga ipatuman gamit ang pagpuli sa PostgreSQL 12, nga sa baylo makatabang sa pagpauswag sa paghimo sa daghang mga naglungtad nga mga pangutana. Sa bag-ong bersyon, ang usa ka substitution nga bahin sa usa ka WITH nga pangutana mahimo lamang ipatuman kung kini dili recursive, walay mga epekto, ug gi-refer kausa lang sa sunod nga bahin sa pangutana.

Ang PostgreSQL 12 nagpaila sa suporta alang sa "namugna nga mga kolum". Gihulagway sa sukaranan sa SQL, kini nga tipo sa kolum nagkalkula sa usa ka kantidad base sa mga sulud sa ubang mga kolum sa parehas nga lamesa. Niini nga bersyon, gisuportahan sa PostgreSQL ang "gitipigan nga mga kolum nga gimugna", diin ang gikalkula nga kantidad gitipigan sa disk.

Нтернационализация

Ang PostgreSQL 12 nagpalapad sa suporta alang sa mga pagkolekta sa ICU pinaagi sa pagtugot sa mga tiggamit sa paghubit sa mga "non-deterministic nga mga koleksyon" nga mahimo, pananglitan, tugotan ang case-insensitive o accent-insensitive nga mga pagtandi.

Pagpanghimatuud

Gipalapad sa PostgreSQL ang suporta niini alang sa lig-on nga mga pamaagi sa pag-authentication nga adunay daghang mga pagpauswag nga naghatag dugang nga seguridad ug gamit. Kini nga pagpagawas nagpaila sa client-side ug server-side encryption para sa authentication sa GSSAPI interfaces, ingon man ang abilidad sa PostgreSQL sa pagdiskubre sa LDAP servers kung ang PostgreSQL gihugpong sa OpenLDAP.

Dugang pa, ang PostgreSQL 12 karon nagsuporta sa usa ka multi-factor authentication nga kapilian. Ang PostgreSQL server mahimo nang maghangyo sa kliyente nga maghatag usa ka balido nga SSL nga sertipiko nga adunay katugbang nga username gamit ang clientcert=verify-full, ug isagol kini sa usa ka bulag nga kinahanglanon nga pamaagi sa pag-authenticate (eg scram-sha-256).

Pagdumala

Gipaila sa PostgreSQL 12 ang abilidad sa paghimo sa dili pag-block sa index nga pagtukod pag-usab gamit ang REINDEX CONCURRENTLY command. Kini nagtugot sa mga tiggamit sa paglikay sa DBMS downtime sa panahon sa taas nga index pagtukod pag-usab.

Dugang pa, sa PostgreSQL 12, mahimo nimong ma-enable o ma-disable ang mga page checksum sa usa ka shutdown cluster gamit ang pg_checksums command. Kaniadto, ang mga checksum sa panid, usa ka bahin nga makatabang sa pag-verify sa integridad sa datos nga gitipigan sa disk, mahimo ra ma-enable kung ang cluster sa PostgreSQL gisugdan gamit ang initdb.

Source: linux.org.ru

Idugang sa usa ka comment