DuckPGQ – A DuckDB community extension for graph workloads

https://news.ycombinator.com/rss Hits: 4
Summary

DuckPGQ DuckPGQ is a DuckDB community extension for graph workloads that supports the SQL/PGQ standard. Leveraging the power of DuckDB to bring high-performance, SQL-based graph query capabilities directly to your analytical workflows. Install and Load DuckPGQ Key Features SQL/PGQ Standard Supports graph pattern matching with SQL/PGQ, following the SQL:2023 standard. High Performance Leverages DuckDB for efficient, in-process graph analytics. Easy To Install Seamlessly integrate with DuckDB through a simple setup process, requiring no dependencies. Open Source Community-driven, extensible, and free to use. Explore DuckPGQ Across Domains Social NetworksAirline DataFinancial Data Setup ATTACH 'https://github.com/Dtenwolde/duckpgq-docs/raw/refs/heads/main/datasets/snb.duckdb'; use snb; install duckpgq from community; load duckpgq; CREATE or replace PROPERTY GRAPH snb VERTEX TABLES ( Person, Forum ) EDGE TABLES ( Person_knows_person SOURCE KEY (Person1Id) REFERENCES Person (id) DESTINATION KEY (Person2Id) REFERENCES Person (id) LABEL knows, Forum_hasMember_Person SOURCE KEY (ForumId) REFERENCES Forum (id) DESTINATION KEY (PersonId) REFERENCES Person (id) LABEL hasMember ); Shortest Path QueryFind Mutual FriendsMost Popular PeopleForum count of the most-followed person -- find the shortest path from one person to all other persons FROM GRAPH_TABLE (snb MATCH p = ANY SHORTEST (p1:person WHERE p1.id = 14)-[k:knows]->*(p2:person) COLUMNS (p1.id, p2.id as other_person_id, element_id(p), path_length(p)) ); -- Find mutual friends between two users FROM GRAPH_TABLE (snb MATCH (p1:Person WHERE p1.id = 16)-[k:knows]->(p2:Person)<-[k2:knows]-(p3:Person WHERE p3.id = 32) COLUMNS (p2.firstName) ); -- Find the 3 most popular people FROM GRAPH_TABLE (snb MATCH (follower:Person)-[follows:knows]->(person:Person) COLUMNS (person.id AS personID, person.firstname, person.lastname, follower.id AS followerID) ) SELECT personID, firstname, lastname, COUNT(followerID) AS numFollowers GROUP BY ...

First seen: 2026-07-24 18:29

Last seen: 2026-07-24 21:32