Eftersom det har presenterats år efter år mellan september och oktober, Lanseringen av den nya versionen av PostgreSQL 17 har tillkännages och som i alla tidigare versioner, Prioriteten förblir prestandaförbättringar och optimeringar av resurser, speciellt för operationer som VACUUM, I/O och frågor, medan den viktigaste nya funktionen i den här utgåvan är inkrementell säkerhetskopiering.
För företagsanvändare ger uppdateringen en mängd förbättringar som förenklar databashantering och användning. Även om PostgreSQL historiskt sett har varit en relationsdatabas, utökar denna version sin integration med avancerad funktionalitet för att arbeta med JSON-dokument, en funktion som vanligtvis förknippas med MongoDB Atlas.
Vad är nytt i PostgreSQL 17
I denna nya version av PostgreSQL 17 som presenteras, en ny datastruktur i VACUUM-drift, vilket minskar minnesförbrukningen upp till 20 gånger, vilket gör att dessa operationer blir snabbare och mer effektiva när det gäller delade resurser.
Från den Prestandaförbättringar, hantering av återskrivningsloggar (WAL) har optimerats och uppnår upp till två gånger skrivprestandan på system med många samtidiga frågor. Det har föreslagits a Strömmande I/O-gränssnitt för att förbättra sekventiell sökning och uppdatering av statistik efter att ha utfört ANALYSE-operationen.
Utöver det, förbättringar har implementerats i frågor med "IN"-klausuler genom att använda B-tree-index, liksom den parallella konstruktionen av BRIN-index har implementerats, "NOT NULL"-kontrollerna har optimerats och behandlingen av vanliga tabelluttryck (CTE) har accelererats och för intensiva beräkningar har SIMD inkluderats instruktioner, såsom AVX-512, för att påskynda operationer såsom "bit_count"-funktionen.
En annan nyhet som sticker ut är nya funktioner för JSON, sedan Användare kan nu fråga JSON-datatyper med vanliga SQL-kommandon. Detta är möjligt tack vare den nya bordsfunktionaliteten json
, som omvandlar JSON-data till en tabellstruktur. Därifrån kan användare göra frågor med hjälp av klausulen FROM
i SQL, vilket gör att data kan returneras i ett relationsformat. Lade till "JSON_TABLE"-funktion för att konvertera JSON-data till vanliga PostgreSQL-tabeller.
De ny inkrementell säkerhetskopieringsfunktion i PostgreSQL 17 det låter dig bara säkerhetskopiera ändringar som gjorts sedan den senaste säkerhetskopieringen full eller inkrementell, vilket optimerar bandbreddsanvändningen och minskar lagringsutrymmet. Även om PostgreSQL redan erbjöd lösningar som WAL Archiving, som replikerade WAL-loggen för att underhålla de nödvändiga delarna av databasen, introducerar version 17 för första gången en inbyggd mekanism för att utföra inkrementella kopior. Detta system minimerar inte bara avbrott under drift genom att ha mindre inverkan på prestanda, utan minskar också avsevärt återställningstider, en nyckelaspekt eftersom återställning av säkerhetskopior vanligtvis är en långsam och oroande process för användarna.
Plattformsoberoende motor implementerad för att bearbeta lokalegenskaper, vilket tillåter konsekvent beteende i ordningsföljden för frågeresultat. Denna motor tar hänsyn till faktorer som förekomsten av specialtecken och skiftlägeskänslighet vid sortering av värden. Den logiska replikeringsmekanismen förenklar nu databasuppgraderingsprocessen utan att behöva ta bort logiska replikeringsplatser eller omsynkronisera data vid migrering till en ny version.
Av andra förändringar som sticker ut:
- Export av långa strängar med kommandot `COPY` har snabbats upp med upp till två gånger.
- Optimerad kopiering när käll- och destinationskodningar matchar.
- Alternativet `ON_ERROR` har lagts till för att tillåta importen att fortsätta trots fel när data infogas.
- Lade till möjligheten att använda kolumner med unika identifierare i partitionerade tabeller.
- Implementerade en failover-funktion för att byta till en backupserver i feltoleranta konfigurationer.
- Lade till ett nytt pg_createsubscriber-verktyg för att konvertera en fysisk replik till en logisk replik.
- Introducerat "sslnegotiation"-alternativ för att förhandla säkra TLS-anslutningar direkt med hjälp av ALPN TLS-tillägget.
- Lade till fördefinierad roll pg_maintain, som ger användare rätt att utföra operationer relaterade till DBMS-underhåll
Slutligen, om du är intresserad av att veta mer om det kan du läsa detaljerna I följande länk.