Utgivningen av databasadministrationssystemet PostgreSQL 17

Efter ett Ärs utveckling har den nya stabila grenen av databashanteringssystemet PostgreSQL 17 publicerats. Uppdateringar för den nya grenen kommer att slÀppas under fem Är fram till november 2029. Stödet för PostgreSQL 12.x, den Àldsta av de stödda grenarna, avslutas den 14 november.

Huvudsakliga nyheter:

  • Vid utförandet av VACUUM-operationen (skrĂ€pplockning, rengöring och packning av lagringsutrymme) har en ny datakonstruktion implementerats som anvĂ€nder upp till 20 gĂ„nger mindre minne. ÖvergĂ„ngen till den nya strukturen har möjliggjort snabbare körning av VACUUM-operationer och minskat konsumtionen av delade resurser.
  • Prestandaoptimering av in- och utdata har fortsatt. Tack vare förbĂ€ttrad kod för hantering av den fördröjda skrivloggen WAL har genomströmningen för skrivoperationer i system med mĂ„nga samtidiga förfrĂ„gningar kunnat ökas med upp till tvĂ„ gĂ„nger. Ett nytt grĂ€nssnitt för strömmande in- och utdata har föreslagits, vilket har ökat hastigheten för sekventiell genomgĂ„ng av data i tabeller och accelererat uppdateringen av statistik för frĂ„geplaneraren efter utförandet av ANALYZE-operationen.
  • Prestandan för förfrĂ„gningar med uttrycket "IN" har förbĂ€ttrats nĂ€r de anvĂ€nder index baserade pĂ„ B-tree-strukturen. Möjlighet till parallell indexering av BRIN (Block Range Index) har implementerats. I frĂ„geplaneraren har kontroller för "NOT NULL" optimerats och behandlingen av gemensamma tabelluttryck (Common Table Expression, CTE) som definieras med SQL-kommandot "WITH" har pĂ„skyndats. Vektorprocessorinstruktioner (SIMD) har implementerats för att snabba upp vissa berĂ€kningar; till exempel har AVX-512-instruktioner anvĂ€nts för att snabba upp bit_count-funktionen.
  • Stöd för nya funktioner för arbete med JSON-formatet, definierade i SQL/JSON-standarden, har implementerats. Funktionen JSON-TABLE har lagts till för att konvertera data frĂ„n JSON-formatet till vanliga PostgreSQL-tabeller, liksom nya jsonpath-operatörer för att omvandla JSON-data till inbyggda PostgreSQL-datatyper. Nya funktioner för att skapa (JSON, JSON_SCALAR och JSON_SERIALIZE) och frĂ„ga (JSON_EXISTS, JSON_QUERY och JSON_VALUE) data i JSON-formatet har föreslagits.
  • Möjligheterna för SQL-kommandot "MERGE" har utökats, vilket möjliggör skapandet av villkorliga SQL-uttryck som kombinerar operationerna INSERT, UPDATE och DELETE i ett och samma uttryck. Stöd för RETURNING-uttrycket har lagts till, vilket gör det möjligt att berĂ€kna och returnera vĂ€rden baserat pĂ„ tillagda, uppdaterade eller borttagna rader. Stöd för uppdatering av vyer har införts.
  • Möjligheterna för uppladdning och export av data i batchlĂ€ge har utökats. Exporthastigheten för stora rader har dubblerats i COPY-kommandot, kopieringsprocessen har optimerats nĂ€r kĂ€ll- och mĂ„lkodningar matchar, och en ON_ERROR-alternativ har lagts till som gör det möjligt att fortsĂ€tta importen trots fel vid datainförsel.
  • För partitionerade tabeller har möjligheten att anvĂ€nda kolumner med unika identifierare lagts till, samt stöd för optimeringstekniken "Constraint exclusion".
  • I mekanismen för anslutning av externa tabeller Foreign Data Wrapper (postgres_fdw) har möjligheten att överföra till externa server underrubriker "EXISTS" och "IN" implementerats.
  • En plattformsoberoende inbyggd motor för behandling av lokal propriĂ©tĂ©s "Collation" har implementerats, vilket anvĂ€nds för att ange sorteringsregler och metoder för att jĂ€mföra med hĂ€nsyn till betydelsen av symboler (t.ex. i sortering av numeriska vĂ€rden, beaktas minustecken och punkter före siffran samt olika skrivsĂ€tt, och vid jĂ€mförelse ignoreras skriftens register och förekomsten av betoning). Den nya motorn garanterar enhetligt beteende vid sortering av frĂ„geresultat, oavsett vilken plattform PostgreSQL körs pĂ„.
  • I mekanismen för logisk replikation, som möjliggör överföring av förĂ€ndringar till en annan server som görs i databasen vid tillĂ€gg, borttagning eller uppdatering av poster, har processen för uppdatering av DBMS förenklats. Tidigare krĂ€vdes det att logiska replikationsslotar tas bort och data synkroniseras om vid övergĂ„ng till en ny betydande version, men nu kan detta göras utan att ta bort slotarna. För redundanta konfigurationer har möjligheten att hantera övergĂ„ng till en reservserver (failover) för logisk replikation införts. En ny verktyg pg_createsubscriber har lagts till för att omvandla en fysisk replik till en ny logisk replik.
  • En ny parameter "sslnegotiation" har lagts till för att möjliggöra direkt förhandling av sĂ€krade TLS-anslutningar med hjĂ€lp av TLS-tillĂ€gget ALPN.
  • En fördefinierad roll, pg_maintain, har implementerats som ger anvĂ€ndaren rĂ€tt att utföra operationer relaterade till underhĂ„ll av databashanteringssystemet.
  • I verktyget pg_basebackup, som anvĂ€nds för att skapa sĂ€kerhetskopior av databaser, har stöd för inkrementella sĂ€kerhetskopior lagts till. För att rekonstruera en fullstĂ€ndig sĂ€kerhetskopia frĂ„n en uppsĂ€ttning inkrementella kopior har ett nytt verktyg, pg_combinebackup, föreslagits. Verktyget pg_dump har fĂ„tt alternativet "—filter" för att vĂ€lja inkluderade objekt i dumpen.
  • Vid analys av förfrĂ„gningar med SQL-kommandot "EXPLAIN" har det lagts till att visa tiden som spenderas pĂ„ att lĂ€sa och skriva lokala block vid in- och utdata. TvĂ„ nya alternativ, "MEMORY" och "SERIALIZE", har ocksĂ„ lagts till i "EXPLAIN"-kommandot, vilket möjliggör att bestĂ€mma storleken pĂ„ den anvĂ€nda minnes och den tid som spenderas pĂ„ att omvandla data för nĂ€tverksöverföring.
  • Progresindikering för VACUUM-operationer med index har sĂ€kerstĂ€llts.
  • Ett systemvisning pg_wait_events har lagts till, vilket tillsammans med visningen pg_stat_activity möjliggör en djupare analys av orsakerna till att aktiva sessioner befinner sig i vĂ€ntande tillstĂ„nd.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster