Egy év fejlesztés után új stabil adatbázis-kezelő ág . A frissítések az új ághoz öt éven át, 2025 novemberéig.
:
- a parancsok a B-tree indexekben, amely javította a lekérdezések teljesítményét és csökkentette a lemezterület-felhasználást a többször előforduló adatok indexelésekor. A deduplikáció periódikus feldolgozó futtatásával történik, amely egyesíti a többszörösen előforduló tuple-ök csoportjait, és a duplikáltakat egy tárolt példányra mutató hivatkozásokkal helyettesíti.
- Javult a lekérdezések teljesítménye, amelyek , (GROUPING SETS) vagy (particionált) táblákat használnak. Az optimalizálások az aggregálás során a hash-ek használatával, a tényleges adatok helyett történnek, ami lehetővé teszi, hogy elkerüljük az összes adat memóriába helyezését nagy lekérdezések feldolgozása közben. A particionálás során kibővült azoknak a helyzeteknek a száma, amikor a szekciók elhagyhatóak vagy egyesíthetőek.
- Hozzáadva a , amelyek a „CREATE STATISTICS” parancs használatával jönnek létre, hatékonyságot növelve a lekérdezés-tervezésben, amelyek „OR” feltételeket vagy listákban történő keresést használnak „IN” vagy „ANY” kifejezésekkel.
- Felgyorsult az indexek tisztítása a művelet során, köszönhetően az indexek szóköz-takarékos párhuzamosításának. Az „PARALLEL” új paraméter segítségével az adminisztrátor meghatározhatja a VACUUM futásához egyszerre induló szálak számát. Hozzáadva a lehetőséget a VACUUM automatikus végrehajtásának kezdeményezésére adatok beszúrása után.
- Támogatás került bevezetésre az inkrementális rendezéshez, amely lehetővé teszi, hogy a korábban rendezett adatokat a lekérdezés következő feldolgozási lépéseiben gyorsabb rendezéshez használják. Az új optimalizálás kérelmezéséhez a lekérdezés-tervezőben meghatározásra került a „”, amely alapértelmezettként be van kapcsolva.
- Lehetőség került bevezetésre a , lehetővé téve, hogy automatikusan garantálja a késleltetett írási log (WAL) szegmensek megőrzését, amíg azokat minden tartalék szerver meg nem kapja, amely replikákat fogad. A replikálási slotok azt is megakadályozzák, hogy a fő szerver törölje azokat a sorokat, amelyek konfliktusokat okozhatnak, még akkor is, ha a tartalék szerver ki van kapcsolva. A paraméter segítségével most korlátozni lehet a WAL-fájlok maximális méretét, hogy megakadályozza a lemezhely kimerülését.
- Bővült az adatbázis-aktivitás monitorozásának lehetősége: az EXPLAIN parancsban további statisztikák jelennek meg a WAL-log használatáról; a lehetővé teszi a folyamatos biztonsági mentések végrehajtási állapotának nyomon követését; az ANALYZE parancsban megjelenik a műveleti folyamat előrehaladásának jelzése.
- Új parancs került hozzáadásra a pg_basebackup parancs által létrehozott biztonsági mentések integritásának ellenőrzésére.
- JSON-nal való munka során a operátorok használatával engedélyezett a datetime() függvény alkalmazása az időformátumok (ISO 8601 karakterláncok és a PostgreSQL natív időtípusok) átalakítására. Például használhatók a következő szerkezetek: «jsonb_path_query(‘[„2015-8-1“, „2015-08-12”]’, ‘$[*] ? (@.datetime() < "2015-08-2".datetime())')» és «jsonb_path_query_array('["12:30", "18:40"]', '$[*].datetime("HH24:MI")')».
- Új beépített függvény került hozzáadásra UUID v4 azonosítók generálásához.
- A particionáló rendszerben teljes mértékben megvalósult a logikai replikáció és a «BEFORE» kifejezéssel megadott
triggerekkel, amelyek sor szintjén működnek. - A „” szintaxis most támogatja a „WITH TIES” kifejezés használatát, amely lehetővé teszi, hogy további sorokat adjon vissza, amelyek a „ORDER BY” alkalmazása után kapott eredményhalmaz végén találhatók.
- Megvalósult a megbízható bővítmények („”) fogalma, amelyeket olyan szokásos felhasználók telepíthetnek, akiknek nincs adatbázis-adminisztrátori joguk. Az ilyen bővítmények listája kezdetben előre meghatározott, és a szuperfelhasználó bővítheti. A megbízható bővítmények közé tartozik a , , és így tovább.
- A külső táblák csatlakozási mechanizmusában, a Foreign Data Wrapper (postgres_fdw) keretében megvalósult a tanúsítvány alapú hitelesítés támogatása. SCRAM-hatóságok használata esetén a klienseknek engedélyezett a „” (channel binding) kérdése.
Forrás: opennet.ru
