pgGraph porta poteri di graph database a Postgres

Evokoa rilascia pgGraph, estensione open-source per query grafiche, traversal e shortest path direttamente su tabelle PostgreSQL esistenti.

pgGraph porta poteri di graph database a Postgres

Cos'è pgGraph

pgGraph è un'estensione PostgreSQL rilasciata su GitHub da Evokoa. Permette di eseguire query a grafo su tabelle esistenti senza spostare i dati. L'estensione individua le relazioni tramite chiavi esterne, costruisce un indice derivato e espone funzioni SQL nello schema graph per traversal, shortest path e ricerche per hop. Il progetto è in alpha precoce e non è consigliato per ambienti di produzione.

Come funziona l'estensione

A modern, abstract 3D tech illustration showing standard database grid tables on one side seamlessly transforming into a glowing network graph structure on the other side, connected by glowing data streams, dark mode with neon blue and purple accents, no text or logos.
pgGraph non introduce un nuovo motore di storage. Legge le tabelle PostgreSQL già presenti, individua i vincoli di foreign key e materializza un grafo in memoria. Le query si scrivono con funzioni come graph.search, graph.shortest_path e graph.neighbors. I risultati tornano come righe SQL normali, quindi si integrano facilmente con query esistenti o con viste materializzate.

L'architettura richiede solo l'installazione dell'estensione compilata con pgrx. Una volta caricata, pgGraph scopre automaticamente le tabelle registrate e mantiene l'indice aggiornato in modo incrementale quando i dati cambiano. Non serve un linguaggio separato: tutto resta all'interno di PostgreSQL.

Installazione e quickstart

Il modo più rapido per provare pgGraph è lo script incluso nel repository
pgGraphEvokoa
Vedi su GitHub →
. Il comando clona il progetto, avvia un container Docker con PostgreSQL 17 e installa l'estensione. Dopo pochi secondi si possono eseguire le query di esempio su due tabelle create al volo con una relazione foreign key.

Per chi ha già un'istanza PostgreSQL locale esiste anche il percorso con pgrx: si compila l'estensione e la si carica con CREATE EXTENSION. Il file docker-compose.yml fornito nel repository permette di replicare l'ambiente in pochi minuti su Linux o macOS.

Valutazione pratica

A sleek, modern conceptual illustration of a glowing digital dashboard or a balanced scale made of holographic tech elements, representing performance analysis and system evaluation, dark background with vibrant green and cyan highlights, no text or logos.
pgGraph riduce la necessità di scrivere CTE ricorsive per ogni schema. Per grafi di dimensioni moderate le prestazioni sono accettabili, soprattutto se si lavora già dentro PostgreSQL e si vuole evitare un secondo database. Lo svantaggio principale è lo stato alpha: mancano test di carico prolungati, il supporto per aggiornamenti concorrenti è ancora limitato e la documentazione è essenziale.

Chi ha già un grafo complesso o richiede algoritmi avanzati come PageRank o community detection dovrà comunque valutare librerie esterne o database specializzati. Per casi d'uso di traversal semplice su dati relazionali esistenti, pgGraph rappresenta però un'aggiunta concreta senza overhead di migrazione.

FAQ

pgGraph funziona su PostgreSQL gestiti in cloud? Funziona solo se si può caricare un'estensione compilata con pgrx. Su servizi serverless o managed senza shell di estensione non è attualmente possibile.

I dati vengono duplicati? No. pgGraph mantiene solo un indice derivato in memoria. Le tabelle originali restano la fonte di verità e non vengono modificate.

È stabile per ambienti di produzione? Il repository stesso avverte che si tratta di software alpha. Meglio limitarlo a database di sviluppo o test fino a nuove release.

---

📖 Leggi anche

Hai bisogno di una consulenza?

Aiuto aziende e startup a sviluppare software, automatizzare processi e integrare AI. Parliamone.

Scrivimi
← Torna al blog