Oggi è stato rilasciato il database open source PostgreSQL 16, che introduce nuove funzionalità mirate a migliorare le prestazioni per una vasta gamma di carichi di lavoro, compresi quelli legati all’intelligenza artificiale.
PostgreSQL, talvolta chiamato anche Postgres, è uno dei database open source più diffusi e ampiamente utilizzati. Sin dalla sua prima versione nel 1996, questo progetto open source ha goduto del sostegno di una solida comunità di contributori e fornitori, che hanno contribuito al suo continuo sviluppo.
I principali provider di servizi cloud, come Microsoft Azure, Google Cloud Platform (GCP) e Amazon Web Services (AWS), offrono tutti versioni ospitate di PostgreSQL. Inoltre, ci sono numerosi fornitori commerciali, tra cui EDB e Percona, che forniscono piattaforme aziendali e soluzioni cloud basate su questa tecnologia.
Sebbene PostgreSQL sia fondamentalmente un database relazionale, il suo utilizzo si è ampliato negli ultimi anni, diventando la base per tecnologie di database analitici come Google’s AlloyDB, ed è ampiamente impiegato anche nelle applicazioni di database vettoriali.
Con il rilascio di PostgreSQL 16, questo database open source è stato arricchito da diverse migliorie. Tra queste, spiccano il miglioramento del caricamento in blocco e delle query sui dati, l’ottimizzazione della concorrenza e l’aggiunta di opzioni per il supporto alle query parallele. Questa versione estende inoltre il supporto di PostgreSQL per lo standard SQL/JSON e introduce nuove funzionalità per la replica logica su larga scala.
“PostgreSQL 16 presenta una serie di miglioramenti delle prestazioni che beneficeranno i carichi di lavoro di qualsiasi dimensione”, ha commentato Jonathan Katz, membro del team principale e collaboratore del PostgreSQL Global Development Group.
Il cuore di ogni database è costituito dai dati, e PostgreSQL si impegna costantemente a migliorare la replicazione e il monitoraggio dei dati. Tra le nuove funzionalità di questa versione, spiccano i miglioramenti nella replica logica. Katz ha spiegato che PostgreSQL 16 consente ora agli utenti di configurare la replica logica da un nodo standby. Questa opzione è particolarmente utile per coloro che gestiscono carichi di lavoro intensivi sulla loro istanza principale e desiderano scaricare la replica logica su un nodo standby meno sollecitato.
“PostgreSQL 16 supporta inoltre l’applicazione parallela di transazioni di grandi dimensioni su un abbonato, accelerando la replicazione e rendendo i dati disponibili più rapidamente”, ha aggiunto Katz.
PostgreSQL ha a lungo fornito funzionalità native di monitoraggio per le operazioni di database, che ora vengono ampliate con l’introduzione della misurazione pg_stat_io. Questa funzionalità consente agli amministratori di database di visualizzare statistiche dettagliate sull’utilizzo di I/O, come il numero totale di operazioni di lettura/scrittura e la quantità di dati letti/scritti.
“Questa nuova visualizzazione fornisce una panoramica più approfondita dell’interazione tra la tua istanza PostgreSQL e il tuo sistema di archiviazione”, ha spiegato Katz.
Oltre alla scalabilità e al monitoraggio, la sicurezza è un aspetto cruciale. PostgreSQL 16 introduce vari aggiornamenti per migliorare la sicurezza. Uno dei principali miglioramenti riguarda il controllo granulare dei privilegi di amministrazione nel comando CREATE ROLE, che definisce i ruoli del database. Questi ruoli determinano ciò che gli utenti possono o non possono fare all’interno del database. In passato, molte operazioni di amministrazione richiedevano l’accesso come “superutente”, il che rappresentava una sfida in ambienti di grandi dimensioni.
PostgreSQL 16 offre ora un controllo più dettagliato, limitando i privilegi del comando CREATE ROLE e la sua capacità di modificare altri ruoli. Adam Wright, Senior Product Manager presso EDB, ha spiegato che questo sistema offre un maggiore controllo e sicurezza per il database.
Inoltre, grazie all’esperienza di EDB nell’esecuzione del servizio di database cloud BigAnimal basato su PostgreSQL, sono state apportate modifiche significative all’appartenenza ai ruoli. Questi cambiamenti consentono ai fornitori e agli amministratori di servizi basati su PostgreSQL di esercitare un controllo più preciso sulle azioni degli utenti, inclusi gli amministratori.
Infine, PostgreSQL è sempre più utilizzato per supportare carichi di lavoro di database vettoriali, spesso attraverso estensioni come pgvettoriale. La grande flessibilità di PostgreSQL consente agli sviluppatori di creare estensioni come pgctor, in grado di supportare carichi di lavoro AI/ML. Grazie ai miglioramenti nelle funzionalità di caricamento in massa di PostgreSQL 16, diventa ancora più semplice utilizzare PostgreSQL in scenari AI/ML.
In sintesi, PostgreSQL 16 rappresenta un passo avanti significativo per questo database open source, migliorando le prestazioni, la scalabilità, la sicurezza e la flessibilità per una vasta gamma di applicazioni e carichi di lavoro.