A PostgreSQL 12 adatbázis-kezelő rendszer kiadása

Egy év fejlesztés után kiadásra került az új stabil PostgreSQL 12 adatbázis-kezelő rendszer ágnak. Frissítések az új ághoz fognak megjelenni öt évig, 2024 novemberéig.

Fő újdonságok:

  • Támogatás került hozzáadásra a „generált oszlopokhoz„, amelyek értéke egy kifejezés alapján kerül kiszámításra, amely magában foglalja más oszlopok értékeit ugyanabban a táblázatban (analóg a nézetekkel, de egyedi oszlopokra vonatkozóan). A generált oszlopok két típusa létezik: tárolt és virtuális. Az előbbi esetében az érték a dátumok hozzáadásakor vagy módosításakor kerül kiszámításra, míg az utóbbinál minden olvasáskor, más oszlopok aktuális állapota alapján. Jelenleg a PostgreSQL csak tárolt generált oszlopokat támogat;
  • Lehetővé vált JSON-dokumentumokból adatlekérdezések végrehajtása Path-kifejezésekkel, amelyek hasonlítanak XPath és a SQL/JSON szabványban definiálva vannak. Az ilyen kifejezések hatékonyabb feldolgozása érdekében, JSONB formátumban tárolt dokumentumokhoz, a meglévő indexelési mechanizmusokat alkalmazzák;
  • Alapértelmezés szerint bekapcsolt a JIT (Just-in-Time) fordító használata, az LLVM fejlesztései alapján, hogy felgyorsítsa néhány kifejezés végrehajtását az SQL-lekérdezés feldolgozása során. Például a JIT alkalmazható a „WHERE” blokkok belsejében, a kimeneti listákban (target lists), aggregáló kifejezésekben és néhány belső műveletnél;
  • Jelentősen megnövelték az indexelési teljesítményt. A B-tree indexek optimalizálva lettek, hogy jobban működjenek a gyakori indexváltozások mellett — a TPC-C tesztek során a teljesítmény általános javulását és a lemezhely fogyasztásának átlagos 40%-os csökkenését figyelték meg. Csökkent a WAL (Write-Ahead Log) eljárás költsége a GiST, GIN és SP-GiST indexek esetén. A GiST indexekhez hozzáadódott az indexek beágyazásának lehetősége (INCLUDE kifejezés által), amely további oszlopokat tartalmaz. A CREATE STATISTICS műveletben támogatás került bevezetésre a legtipikusabb értékek statisztikája (MCV) iránt, amely lehetővé teszi a nem egyenletesen eloszló oszlopoknál a hatékonyabb lekérdezési tervek generálását;
  • A szekcionálás (particionálás) megvalósítása optimalizálva lett az olyan lekérdezésekhez, amelyek olyan táblákat érintenek, melyek több ezer szekcióval rendelkeznek, de kivonatolva korlátozott adathalmazokat kérdeznek le. Növelték az adattovábbítás teljesítményét a szekcionált táblákba végzett INSERT és COPY műveletek során, és lehetőséget biztosítottak új szekciók hozzáadására az „ALTER TABLE ATTACH PARTITION” parancs használatával, anélkül, hogy a lekérdezések végrehajtását blokkolnák;
  • Bevezették a generált táblázatos kifejezések automatikus inline-kibővítésének támogatását (Common Table Expression, CTE), amelyek lehetővé teszik az ideiglenes, elnevezett eredményhalmazok használatát a WITH utasítással. Az inline-kibővítés javítja a legtöbb lekérdezés teljesítményét, de egyelőre csak nem rekurzív CTE-knél alkalmazható;
  • Támogatás került hozzáadásra nem determinisztikus helyi jellemzők „Collation” támogatása, amely lehetővé teszi a karakterek jelentése szerinti szortírozási szabályok és összehasonlítási módszerek megadását (például a numerikus értékek szortírozásakor figyelembe veszik a mínusz és a pont meglétét a szám előtt és a különböző írásmódokat, míg az összehasonlításnál a kis- és nagybetűk, valamint a hangsúlyjelek nem játszanak szerepet);
  • Bevezették az ügyfél többlépcsős azonosításának támogatását, amely során a pg_hba.conf fájlban az SSL tanúsítvány (clientcert=verify-full) alapú azonosítást kombinálni lehet egy további azonosítási módszerrel, mint például scram-sha-256;
  • Bevezették a kommunikációs csatorna titkosításának támogatását az GSSAPIazonosításon keresztül, mind az ügyfél, mind a szerver oldalán;
  • Bevezették az LDAP-szerverek DNS SRV feljegyzések alapján történő meghatározásának támogatását, ha a PostgreSQL OpenLDAP támogatással lett összeállítva;
  • Bevezették a „REINDEX CONCURRENTLY” műveletet, amely lehetővé teszi az indexek átkonfigurálását anélkül, hogy blokkolnák az indexbe írási műveleteket;
  • Bevezették a parancsot pg_checksums, amely lehetővé teszi a már létező adatbázis számára a lapok adatellenőrző összegeinek bekapcsolását és kikapcsolását (ez a művelet korábban csak az adatbázis inicializálása során volt támogatható);
  • Biztosították az CREATE INDEX, REINDEX, CLUSTER, VACUUM FULL és pg_checksums műveletek előrehaladási mutatójának megjelenítését;
  • Bevezették a „CREATE ACCESS METHOD” parancsot, amely lehetővé teszi új tárolási módszerekhez optimalizált táblázatkezelők csatlakoztatását specifikus feladatokhoz. Jelenleg az egyetlen beépített táblázat-hozzáférési módszer a „heap”;
  • A konfigurációs fájl recovery.conf egyesült a postgresql.conf fájllal. A helyreállítási állapotba való átmenet jelzőjeként mostantól kell a recovery.signal és a standby.signal fájlokat használják.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster