Datganiad PostgreSQL 15

Ar ôl blwyddyn o ddatblygiad, cyhoeddwyd cangen sefydlog newydd o DBMS PostgreSQL 15. Bydd diweddariadau ar gyfer y gangen newydd yn cael eu rhyddhau dros bum mlynedd tan fis Tachwedd 2027.

Prif arloesiadau:

  • Ychwanegwyd cefnogaeth i'r gorchymyn SQL "MERGE", sy'n debyg i'r ymadrodd "INSERT ... ON CONFLICT". Mae MERGE yn caniatáu ichi greu datganiadau SQL amodol sy'n cyfuno gweithrediadau MEWNOSOD, DIWEDDARIAD, a DILEU yn un mynegiant. Er enghraifft, gan ddefnyddio MERGE, gallwch uno dau dabl trwy fewnosod cofnodion coll a diweddaru rhai sy'n bodoli eisoes. UNO I MEWN I customer_account ca DEFNYDDIO recent_transactions t AR t.customer_id = ca.customer_id WRTH MATCHED YNA Y WYBODAETH DDIWEDDARAF SET balans = balans + trafodiad_value PRYD NAD YW'N CYFATEB HYN NODWCH (customer_id, balans) GWERTHOEDD (t.customer_id, tue);transaction_value
  • Mae algorithmau ar gyfer didoli data yn y cof ac ar ddisg wedi'u gwella'n sylweddol. Yn dibynnu ar y math o ddata, mae profion yn dangos cynnydd mewn cyflymder didoli o 25% i 400%.
  • Mae swyddogaethau ffenestr sy'n defnyddio row_number(), Rank(), dense_rank() a count() wedi'u cyflymu.
  • Mae'r posibilrwydd o gyflawni ymholiadau cyfochrog gyda'r ymadrodd “SELECT DISTINCT” wedi'i roi ar waith.
  • Mae'r mecanwaith ar gyfer cysylltu tablau allanol Lapiwr Data Tramor (postgres_fdw) yn gweithredu cefnogaeth ar gyfer ymrwymiadau asyncronaidd yn ychwanegol at y gallu a ychwanegwyd yn flaenorol i brosesu ceisiadau i weinyddion allanol yn anghydamserol.
  • Ychwanegwyd y gallu i ddefnyddio algorithmau LZ4 a Zstandard (zstd) i gywasgu logiau trafodion WAL, a all, o dan rai llwythi gwaith, wella perfformiad ar yr un pryd ac arbed lle ar y ddisg. Er mwyn lleihau'r amser adfer ar ôl methiant, mae cefnogaeth ar gyfer adalw tudalennau sy'n ymddangos yn y log WAL yn rhagweithiol wedi'i ychwanegu.
  • Mae'r cyfleustodau pg_basebackup wedi ychwanegu cefnogaeth ar gyfer cywasgu ochr y gweinydd o ffeiliau wrth gefn gan ddefnyddio'r dulliau gzip, LZ4 neu zstd. Mae'n bosibl defnyddio'ch modiwlau eich hun ar gyfer archifo, sy'n eich galluogi i wneud heb yr angen i redeg gorchmynion cregyn.
  • Mae cyfres o swyddogaethau newydd wedi'u hychwanegu ar gyfer prosesu llinynnau gan ddefnyddio mynegiadau rheolaidd: regexp_count(), regexp_instr(), regexp_like() a regexp_substr().
  • Mae'r gallu i agregu mathau aml-ystod (“multirange”) wedi'i ychwanegu at y swyddogaeth range_agg().
  • Ychwanegwyd modd security_invoker, sy'n eich galluogi i greu golygfeydd sy'n rhedeg fel y defnyddiwr sy'n galw yn hytrach na'r crëwr golygfa.
  • Ar gyfer atgynhyrchu rhesymegol, mae cymorth ar gyfer hidlo rhesi a nodi rhestrau o golofnau wedi'i roi ar waith, gan ganiatáu ar ochr yr anfonwr i ddewis is-set o ddata o'r tabl ar gyfer atgynhyrchu. Yn ogystal, mae'r fersiwn newydd yn symleiddio rheoli gwrthdaro, er enghraifft, mae bellach yn bosibl hepgor trafodion sy'n gwrthdaro ac analluogi tanysgrifiad yn awtomatig pan ganfyddir gwall. Mae atgynhyrchu rhesymegol yn caniatáu defnyddio ymrwymiad dau gam (2PC).
  • Mae fformat log newydd wedi'i ychwanegu - jsonlog, sy'n cadw gwybodaeth mewn ffurf strwythuredig gan ddefnyddio'r fformat JSON.
  • Mae gan y gweinyddwr y gallu i ddirprwyo hawliau unigol i ddefnyddwyr newid rhai paramedrau cyfluniad gweinydd PostgreSQL.
  • Mae'r cyfleustodau psql wedi ychwanegu cefnogaeth ar gyfer chwilio gwybodaeth am osodiadau (pg_settings) gan ddefnyddio'r gorchymyn “\dconfig”.
  • Sicrheir y defnydd o gof a rennir ar gyfer cronni ystadegau am weithrediad y gweinydd, sy'n ei gwneud hi'n bosibl cael gwared ar broses ar wahân o gasglu ystadegau ac ailosod y cyflwr i ddisg o bryd i'w gilydd.
  • Mae'r gallu i ddefnyddio'r locales ICU rhagosodedig “Coladu ICU” wedi'i ddarparu; yn flaenorol, dim ond locales libc y gellid eu defnyddio fel y locale rhagosodedig.
  • Mae estyniad adeiledig pg_walinspect wedi'i gynnig, sy'n eich galluogi i archwilio cynnwys ffeiliau gyda logiau WAL gan ddefnyddio ymholiadau SQL.
  • Ar gyfer y sgema cyhoeddus, diddymwyd awdurdod pob defnyddiwr, ac eithrio perchennog y gronfa ddata, i weithredu'r gorchymyn CREATE.
  • Mae cefnogaeth i Python 2 wedi'i ddileu yn PL/Python. Mae'r modd cadw copi wrth gefn anarferedig wedi'i ddileu.

Ychwanegiad: O 19:00 tan 20:00 (MSK) bydd gweminar yn trafod y newidiadau yn y fersiwn newydd gyda Pavel Luzanov (Postgres Professional). I'r rhai na allant ymuno â'r darllediad, mae recordiad o adroddiad Mehefin Pavel “PostgreSQL 15: MERGE a mwy” yn PGConf.Russia ar agor.

Ffynhonnell: opennet.ru

Ychwanegu sylw