PostgreSQL 12 release

Sawise setahun pembangunan diterbitake cabang stabil anyar saka DBMS PostgreSQL 12. Nganyari kanggo cabang anyar bakal metu limang taun nganti Nopember 2024.

Utama inovasi:

  • Ditambahake dhukungan kanggo "kolom kui", Nilai sing diwilang adhedhasar ekspresi sing nutupi nilai kolom liyane ing tabel sing padha (padha karo tampilan, nanging kanggo kolom individu). Kolom sing digawe bisa dadi rong jinis - disimpen lan virtual. Ing kasus sing sepisanan, nilai kasebut diwilang nalika data ditambahake utawa diganti, lan ing kasus kapindho, nilai kasebut diwilang ing saben maca adhedhasar kahanan saiki kolom liyane. Saiki, PostgreSQL mung ndhukung kolom sing wis disimpen;
  • Nambahake kemampuan kanggo pitakon data saka dokumen JSON nggunakake Ekspresi path, ngelingi XPath lan ditetepake ing standar SQL / JSON. Mekanisme indeksasi sing ana digunakake kanggo nambah efisiensi ngolah ekspresi kasebut kanggo dokumen sing disimpen ing format JSONB;
  • Diaktifake kanthi gawan yaiku nggunakake kompiler JIT (Just-in-Time) adhedhasar pangembangan LLVM kanggo nyepetake eksekusi sawetara ekspresi sajrone pangolahan query SQL. Contone, JIT digunakake kanggo nyepetake eksekusi ekspresi ing blok WHERE, dhaptar target, ekspresi agregat, lan sawetara operasi internal;
  • Kinerja indeksasi wis apik banget. Indeks B-tree dioptimalake kanggo bisa digunakake ing lingkungan sing indeks asring diganti - Tes TPC-C nuduhake peningkatan kinerja sakabΓ¨hΓ© lan pangurangan rata-rata konsumsi ruang disk 40%. Suda overhead nalika ngasilake write-ahead log (WAL) kanggo jinis indeks GiST, GIN lan SP-GIST. Kanggo GiST, kemampuan kanggo nggawe indeks bungkus (liwat ekspresi INCLUDE) sing kalebu kolom tambahan wis ditambahake. Ing operasi Gawe STATISTIK Nyedhiyakake dhukungan kanggo statistik Most Common Value (MCV) kanggo ngasilake rencana pitakon sing luwih optimal nalika nggunakake kolom sing disebarake kanthi ora rata;
  • Implementasi partisi dioptimalake kanggo pitakon sing mbentang tabel kanthi ewonan partisi, nanging diwatesi kanggo milih subset data sing winates. Kinerja nambahake data menyang tabel partisi nggunakake operasi INSERT lan COPY wis tambah, lan uga bisa nambah bagean anyar liwat "ALTER TABLE ATTACH PARTITION" tanpa ngalangi eksekusi query;
  • Dhukungan tambahan kanggo ekspansi inline otomatis ekspresi tabel umum (Ekspresi Tabel Umum, CTE) sing ngidini nggunakake set asil jeneng sementara sing ditemtokake nggunakake statement WITH. Penyebaran inline bisa ningkatake kinerja pitakon paling akeh, nanging saiki mung digunakake kanggo CTE non-rekursif;
  • Dhukungan ditambahake non-deterministik sifat lokal "Collation", sing ngidini sampeyan nyetel aturan ngurutake lan cara sing cocog kanthi njupuk makna karakter (contone, nalika ngurutake nilai digital, ana minus lan titik ing ngarep nomer lan macem-macem jinis. ejaan dianggep, lan nalika mbandhingake, kasus karakter lan ananΓ© tandha aksen ora dianggep);
  • Dhukungan tambahan kanggo otentikasi klien multi-faktor, ing pg_hba.conf sampeyan bisa nggabungake otentikasi sertifikat SSL (clientcert=verify-full) karo metode otentikasi tambahan kayata scram-sha-256 kanggo otentikasi;
  • Nambahake dhukungan kanggo enkripsi saluran komunikasi nalika otentikasi liwat GSSAPI, ing sisih klien lan ing sisih server;
  • Dhukungan sing ditambahake kanggo nemtokake server LDAP adhedhasar cathetan "DNS SRV" yen PostgreSQL dibangun nganggo OpenLDAP;
  • Tambah operasi"REINDEX SAMPEYANΒ» kanggo mbangun maneh indeks tanpa ngalangi operasi nulis menyang indeks;
  • Added printah pg_checksums, sing ngidini sampeyan ngaktifake utawa mateni mriksa checksums kaca data kanggo database sing wis ana (sadurunge operasi iki mung didhukung sajrone initialization database);
  • Nyedhiyakake output indikator kemajuan kanggo operasi Nggawe INDEX, REINDEX, CLUSTER, VACUUM FULL lan pg_checksums;
  • Ditambahake perintah "Nggawe METODE AKSESΒ»kanggo nyambungake pawang kanggo cara panyimpenan Tabel anyar optimized kanggo macem-macem tugas tartamtu. Saiki siji-sijine cara akses tabel sing dibangun yaiku "numpuk";
  • File konfigurasi recovery.conf wis digabung karo postgresql.conf. Minangka pratondho transisi menyang negara Recovery sawise Gagal, saiki kudu gunakake file recovery.signal lan standby.signal.

Source: opennet.ru

Add a comment