Evokoa/pgGraph

Open-source graph database superpowers for your existing Postgres data.

解決的問題

像 PostgreSQL 這樣的關聯式資料庫非常擅長處理結構化資料,但在處理複雜的圖樣式問題時卻很吃力——例如尋找兩個實體之間的最短路徑,或在特定跳數(hops)內發現記錄。傳統上,這些查詢需要複雜的自定義遞迴 SQL,這可能會導致速度緩慢且難以維護。

工作原理

pgGraph 不是將資料遷移到單獨的圖資料庫,而是從您現有的 PostgreSQL 資料表中構建一個專門的、讀取密集型的圖索引。它使用壓縮稀疏行 (CSR) 格式在連續的記憶體結構中儲存關係,從而實現極快的遍歷。您可以使用 graph 模式下的標準 SQL 函數與此圖進行互動,同時 PostgreSQL 仍然是您資料的權威事實來源。

適用對象

  • 需要執行複雜關係查詢,但又不想遷移到專用圖資料庫的 PostgreSQL 使用者。
  • 尋求加速 GraphRAG 等基於圖的工作負載的資料工程師。
  • 希望在保持所有資料位於現有關聯式模式和安全約束內的情況下,執行高速遍歷(如最短路徑或多跳搜尋)的使用者。

亮點

  • 零資料遷移: 您的資料保留在標準的 PostgreSQL 資料表中;pgGraph 僅建立派生索引。
  • 高性能: 使用專門的記憶體高效執行層,繞過遞迴 SQL 連結的開銷。
  • SQL 原生: 不需要新的查詢語言;使用 SQL 函數即可執行圖搜尋。
  • 安全特性: 包括深度限制和記憶體保護等內建斷路器,防止無限制的遍歷導致資料庫崩潰。