Ricerca nel sito web

PostgreSQL 18 rilasciato con I/O fino a 3 volte più veloce e aggiornamenti più semplici


PostgreSQL 18, RDBMS open-source, offre un'I/O 3 volte più veloce, aggiornamenti più semplici, autenticazione OAuth 2.0 e nuovi strumenti per sviluppatori.

Un anno dopo il suo precedente grande rilascio 17, il PostgreSQL Global Development Group ha annunciato PostgreSQL 18, l'ultima versione del database open-source più avanzato al mondo, con una serie di miglioramenti, in particolare un nuovissimo sottosistema di I/O asincrono che può offrire prestazioni fino a tre volte più rapide su determinati carichi di lavoro.

Fino ad ora, PostgreSQL si basava sul readahead del sistema operativo per l'accesso allo storage, che spesso non riusciva a prevedere completamente le esigenze del database. Con l'I/O asincrono, PostgreSQL 18 può effettuare più richieste I/O simultaneamente, riducendo i tempi di attesa e migliorando il throughput. È un cambiamento che influisce sulle scansioni sequenziali, sulle scansioni bitmap dell'heap e persino sulle operazioni di vacuum.

Gli amministratori possono scegliere tra i metodi worker e io_uring, oppure attenersi alla modalità sincrona tradizionale se lo preferiscono.

Gli aggiornamenti sono un altro aspetto importante di questa release. PostgreSQL 18 trasferisce le statistiche del pianificatore durante gli aggiornamenti tra versioni principali, il che significa che i sistemi non subiranno gli stessi rallentamenti mentre attendono che ANALYZE completi la ricostruzione dei dati. Anche lo strumento pg_upgrade è stato migliorato con una gestione più veloce degli oggetti, supporto per controlli paralleli utilizzando --jobs e una nuova opzione --swap che riduce le operazioni sui file.

Per quanto riguarda le prestazioni, questa versione introduce le ricerche “skip scan” per gli indici multicolonna, rendendo più veloci le query che omettono le colonne principali dell'indice. Anche le query che utilizzano condizioni OR nelle clausole WHERE possono ora beneficiare delle ottimizzazioni degli indici. Le join hash, le join merge e la creazione di indici GIN hanno ricevuto ottimizzazioni, mentre gli utenti hardware ottengono un supporto aggiuntivo per le istruzioni ARM NEON e SVE.

Dal lato sviluppatore, PostgreSQL 18 introduce colonne generate virtuali, che calcolano i valori al momento della query invece di memorizzarli, oltre al supporto per UUIDv7 per identificatori ordinati per timestamp. Anche la replica logica è più flessibile, con colonne generate memorizzate ora replicabili e nuove opzioni di report per i conflitti di scrittura.

Inoltre, vale la pena notare il supporto aggiuntivo per l'autenticazione OAuth 2.0, la validazione per la modalità FIPS e la configurazione avanzata dei cifrari TLS 1.3. Il rilascio depreca anche l'autenticazione delle password MD5, invitando gli utenti a passare a SCRAM. I miglioramenti della replicazione includono lo streaming parallelo di default e l'opzione di eliminare automaticamente i slot di replicazione inattivi.

Infine, gli strumenti di osservabilità e manutenzione hanno ricevuto aggiornamenti, da output EXPLAIN più dettagliati a un comportamento del vacuum migliorato che blocca più pagine in maniera proattiva. PostgreSQL 18 abilita inoltre di default i checksum delle pagine sui cluster nuovi e introduce la versione 3.2 del protocollo wire di PostgreSQL, il primo aggiornamento del protocollo dal 2003.

Visita l'annuncio ufficiale per consultarli, oppure dai un'occhiata alle note di rilascio per una panoramica dettagliata di tutte le novità. È disponibile anche una documentazione completa in formato HTML e PDF.