A PostgreSQL 16 teljesítményének javítását hozza, szembetűnő fejlesztéseket nyújtva a lekérdezési párhuzamosításban, a nagy adatmennyiség betöltésében és a logikai replikációban. Ebben a kiadásban számos új funkció található fejlesztők és rendszergazdák számára egyaránt, ideértve a több SQL/JSON szintaxist, új monitorozási statisztikákat a terhelésedhez, és nagyobb rugalmasságot az hozzáférési szabályok meghatározásához a nagy rendszereken történő házirendek kezeléséhez.
A PostgreSQL 16 számos új funkciót és fejlesztést tartalmaz, amelyek között megtalálhatók az alábbiak:
- Lehetővé teszi a FULL és internal right OUTER hash összekapcsolások párhuzamos végrehajtását.
- Engedi a logikai replikációt a nem aktív (stanby) szerverekről.
- Lehetővé teszi a logikai replikációra feliratkozott kiszolgálók a nagy tranzakciók párhuzamos alkalmazását.
- Monitorozási lehetőséget biztosít az I/O statisztikákhoz az új pg_stat_io nézet használatával.
- SQL/JSON konstruktorokat és azonosító funkciókat ad hozzá.
- Javítja a vacuum freezing teljesítményét.
- Támogatást nyújt a felhasználó- és adatbázisnevek reguláris kifejezéses illesztéséhez a pg_hba.conf-ban, valamint a felhasználónevekhez a pg_ident.conf-ban.
A fentieken kívül a PostgreSQL 16 további új funkciókat is tartalmaz, amelyek részletes bemutatása megtalálható a kiadási jegyezetben.
Az újdonságokról
„Mivel a relációs adatbázis használati mintái fejlődnek, a PostgreSQL folyamatosan magas teljesítményt nyújt a nagy méretű adatok keresésében és kezelésében” - mondta Dave Page, a PostgreSQL Core Team tagja. „A PostgreSQL 16 lehetővé teszi a felhasználók számára, hogy bővítsék és skálázzák fel és le a terheléstől függően, miközben új lehetőségeket kínál az adatok kezelésének optimalizálásához és megértéséhez.”
A PostgreSQL, mint megbízható és erős adatkezelő rendszer, több mint 25 évnyi nyílt forráskódú fejlesztésből profitál, amit egy globális fejlesztő közösség tett lehetővé, és a vállalatok minden méretének előnyös választásává vált az open source relációs adatbázisok között. Teljesítményjavítások
A PostgreSQL 16 új lekérdezési tervező optimalizációkon keresztül javítja a meglévő PostgreSQL funkciók teljesítményét. Ebben a legújabb kiadásban a lekérdezési tervező képes párhuzamosítani a FULL és RIGHT join műveleteket, jobban optimalizált terveket generál lekérdezésekhez, amelyek aggregáló funkciókat használnak DISTINCT vagy ORDER BY záradékkal, inkrementális rendezéseket használ SELECT DISTINCT lekérdezésekhez, és optimalizálja az ablakfunkciókat, hogy hatékonyabban fussonak. Javítja az RIGHT és OUTER "anti-join"-t is, amely lehetővé teszi a felhasználók számára, hogy azonosítsák azokat a sorokat, amelyek nincsenek jelen egy összekapcsolt táblában.
Ebben a kiadásban javul a COPY használatával történő tömeges betöltés teljesítménye mind egyszeri, mind párhuzamos műveletek esetén, néhány esetben akár 300% teljesítményjavulást is mutatva. A PostgreSQL 16 támogatást nyújt a libpq-t használó ügyfelek számára a terhelés kiegyensúlyozásához, és javítja a vakum stratégiát, csökkentve a teljes tábla befagyasztásának szükségességét. Emellett a PostgreSQL 16 bevezeti a CPU gyorsítást a SIMD használatával mind az x86, mind az ARM architektúrákban, ami teljesítményjavulást eredményez az ASCII és JSON karakterláncok feldolgozásakor, valamint az tömbök és az alcsoport keresésekor. Logikai replikáció
Logikai replikáció
A logikai replikáció lehetővé teszi a felhasználók számára, hogy adatokat áramoltathassanak más PostgreSQL példányokhoz vagy feliratkozó pédányok, amelyek képesek értelmezni a PostgreSQL logikai replikációs protokollját. A PostgreSQL 16-ban a felhasználók logikai replikációt végezhetnek egy standby példányból, ami azt jelenti, hogy az állomások logikai változásokat publikálhatnak más szerverekre. Ez új munkaterhelés-elosztási lehetőségeket kínál a fejlesztőknek, például egy alternatív kiszolgáló használata a fő példány helyett, a logikai replikálásához az downstream rendszerekbe.
Ezenkívül a PostgreSQL 16 több teljesítményjavítást is tartalmaz a logikai replikációhoz. A feliratkozó példányok most már nagy tranzakciókat is alkalmazhatnak párhuzamos munkások segítségével. Azoknál a tábláknál, amelyeknek nincs elsődleges kulcsa, az előfizetett példányok használhatnak B-fa indexeket a sorok megtalálásához a szekvenciális átvizsgálások helyett. Bizonyos feltételek mellett a felhasználók felgyorsíthatják az asztaltábla szinkronizációját is az bináris formátum használatával.
A PostgreSQL 16 számos hozzáférési irányítási javulást is tartalmaz a logikai replikációban, ideértve az új előre definiált pg_create_subscription szerepet, amely lehetővé teszi a felhasználók számára új logikai előfizetések létrehozását. Végül, ez a kiadás elkezdi támogatni a két különböző kiadóból származó két tábla közötti adat
replikációt is, bevezetve a funkciót az adatok replikálásához két különböző forrástól.
Fejlesztőknek
A PostgreSQL 16 további szintaxisi elemeket ad hozzá a SQL/JSON szabványból, ideértve a konstruktorokat és predikátumokat, például a JSON_ARRAY(), JSON_ARRAYAGG() és IS JSON. Ebben a kiadásban lehetőség van az aláhúzások használatára ezreseket elválasztóként (pl. 5_432_000) és nem decimális egész literálokat, például 0x1538, 0o12470 és 0b1010100111000.
A PostgreSQL 16 használói új parancsokkal is rendelkeznek a psql-ben. Ide tartozik a \bind, amely lehetővé teszi a felhasználók számára a paraméterezett lekérdezések előkészítését és a \bind használatát a változók helyettesítéséhez (pl. SELECT $1::int + $2::int \bind 1 2 \g).
A PostgreSQL 16 általános támogatást is nyújt a szöveg rendezéséhez. A PostgreSQL 16 alapértelmezés szerint az ICU támogatással épül, meghatározza az alapértelmezett ICU helyet a környezetből, és lehetővé teszi a felhasználók számára, hogy saját ICU rendezési szabályokat definiáljanak.
Monitorozás
Az adatbázismunkaterhelések teljesítményének beállításának kulcsfontosságú eleme az I/O műveletek hatásának megértése a rendszerre. A PostgreSQL 16 bemutatja a pg_stat_io-t, egy új forrást az I/O hozzáférési minták részletes elemzéséhez.
Ezenkívül ez a kiadás új mezőt ad a pg_stat_all_tables nézethez, amely rögzíti egy tábla vagy index utolsó vizsgálatának időbélyegzőjét. A PostgreSQL 16 továbbá javítja az auto_explain olvashatóságát a paraméterezett utasításokba továbbított értékek naplózásával, és javítja a pg_stat_statements és pg_stat_activity. által használt lekérdezéskövetési algoritmus pontosságát is.
Hozzáférési irányítás és biztonság
A PostgreSQL 16 finomabb szintű hozzáférési irányítási lehetőségeket biztosít és megerősíti a biztonsági funkciókat. A kiadás javítja a pg_hba.conf és pg_ident.conf fájlok kezelését, beleértve a reguláris kifejezések illesztésének lehetőségét a felhasználók és adatbázisnevekhez, valamint a külső konfigurációs fájlok include direktíváit.
Ebben a kiadásban több biztonságra irányuló ügyfélkapcsolati paramétert is hozzáad, ideértve a require_auth-ot, amely lehetővé teszi az ügyfelek számára, hogy megadjanak olyan hitelesítési paramétereket, amelyeket elfogadnak a szerverről, és az sslrootcert="system"-t, ami azt jelzi, hogy a PostgreSQL a kliens operációs rendszer által nyújtott megbízható tanúsítványokat (CA) kell használnia. Ezenkívül a kiadás támogatást ad a Kerberos hitelesítési delegálásához, lehetővé téve az olyan kiterjesztéseknek, mint a postgres_fdw és a dblink, hogy hitelesített hitelesítő adatokkal kapcsolódjanak megbízható szolgáltatásokhoz.
A PostgreSQL egy ingyenes és nyílt forráskódú relációs adatbázisrendszerek egyike. Olyan szoftver, amely lehetővé teszi adatok tárolását, kezelését és lekérdezését szervezett és hatékony módon. A PostgreSQL rövidítése "Postgres", és gyakran említik így a közösségben.
Ez a rendszer számos jelentős tulajdonsággal és előnnyel rendelkezik, amelyek magukban foglalják:
Nyílt forráskód: A PostgreSQL nyílt forráskódú, ami azt jelenti, hogy bárki szabadon használhatja, módosíthatja és terjesztheti a saját projektekben vagy alkalmazásaikban.
Erőteljes és teljes funkciók: A PostgreSQL számos fejlett adatbázis funkciót és funkcionális lehetőséget kínál, beleértve a tranzakciós kezelést, az indexelést, a kapcsolati adatbázis-kezelést és a szöveges keresést.
Kiterjeszthetőség: Lehetőség van saját függvények, operátorok és adattípusok hozzáadására a PostgreSQL-hez, ami a rendszer alkalmazkodását az egyedi igényekhez teszi lehetővé.
Teljesítmény és megbízhatóság: A PostgreSQL nagyon jó teljesítményt nyújt nagy adatbázisok és magas terhelésű környezetek esetén is. Támogatja a tranzakciókat és a párhuzamos lekérdezéseket, valamint különböző biztonsági intézkedéseket is kínál.
Közösségi támogatás: A PostgreSQL népszerűségét és fejlesztését egy aktív közösség segíti elő, amely folyamatosan frissíti és fejleszti a rendszert.
A PostgreSQL sokféle alkalmazásban használható, ideértve webalkalmazásokat, vállalati rendszereket, adattárházakat és sok más területet, ahol hatékony adatbázis-kezelésre van szükség.