Skip to content
Graph Analytics

Your Delta tables are a property graph

Declare which columns are nodes and edges. DeltaForge projects the graph in memory from the tables you already have. Query with Cypher. Join results back to SQL. No separate graph database.

Cypher pattern matching over in-place graph projections
32 graph algorithms as SQL table functions, 18 GPU-accelerated
Graph results join directly back to SQL in the same session
transactions cust_id merch_id amt C-101 M-501 430 C-102 M-501 120 C-101 M-502 80 Delta Lake table project Property Graph C-101 PR: 0.42 C-102 PR: 0.21 M-501 PR: 0.58 M-502 PR: 0.36 PageRank scores SELECT * FROM graph_pagerank ('transactions', 0.85, 20); MATCH (c:Customer)-[:MADE]->(t:Transaction)-[:AT]->(m:Merchant)

How the projection works

Your table rows become graph edges; referenced keys become nodes

Declare once

Tell DeltaForge which column is the source node and which is the target node. The graph is projected from those columns.

Session-local projection

The graph is built on demand and held in the session, ready for Cypher queries and algorithm table functions without a round-trip to storage.

Mutations flow through

Use ordinary INSERT, UPDATE, DELETE on the underlying Delta tables. The graph rebuilds incrementally so Cypher sees the latest data.

Cypher stays read-only

MATCH, WHERE, RETURN for graph queries. All writes go through SQL on the Delta table, keeping a single transaction model.

32 graph algorithms as SQL table functions

Call any of them directly from a SELECT. 18 ship with GPU implementations selectable via the ON GPU Cypher hint.

Centrality (8)

graph_pagerank(), graph_articlerank(), graph_eigenvector(), graph_hits(), graph_betweenness(), graph_closeness(), graph_harmonic(), graph_degree()

Community Detection (10)

graph_louvain(), graph_leiden(), graph_labelpropagation(), graph_components(), graph_scc(), graph_kcore(), graph_lcc(), graph_triangle_count(), graph_modularity(), graph_conductance()

Topology & Connectivity (2)

graph_bridges(), graph_articulationpoints()

Pathfinding (9)

graph_shortest_path() (Dijkstra), graph_bellmanford(), graph_deltastepping(), graph_astar(), graph_yens(), graph_bfs(), graph_dfs(), graph_mst(), graph_randomwalk()

Similarity (2)

graph_knn(), graph_similarity() (Jaccard, Adamic-Adar, common neighbors)

Node Embeddings (1)

graph_fastrp() (Fast Random Projection embeddings)

GPU acceleration via the ON GPU Cypher hint

Eighteen algorithms ship with WGSL compute shaders that run on any cross-vendor wgpu device (NVIDIA, AMD, Intel, Apple). Numerically identical to the CPU path, verified against Neo4j + GDS 2.6.9 on Zachary's karate club.

GPU-accelerated (18)

PageRank, ArticleRank, Eigenvector, HITS, Betweenness, Harmonic, Louvain, Label Propagation, Connected Components, K-Core, LCC, Triangle Count, Modularity, Conductance, Bellman-Ford, Delta-Stepping, Random Walk, FastRP.

CPU-only by design (14)

Leiden refinement, Bridges, Articulation Points, A*, Yen's K-shortest paths, Closeness, SCC, Shortest Path (Dijkstra), BFS, DFS, MST, KNN, Similarity, Degree. Sequential by construction; GPU offers no speedup.

Strict dispatch

ON GPU means "run on GPU or error". No silent CPU fallback. Below-threshold graphs override with ON GPU THRESHOLD 1; a missing GPU implementation errors with a clear message instead of producing inconsistent results.

Storage modes

Nodes and edges live in regular Delta tables; choose the column layout that fits

Flattened

Structured columns for fixed-schema graphs. Best for analytics-heavy scans.

Hybrid

Structured edge columns with a property map for flexible attributes. Balances scan speed with schema flexibility.

JSON

Full graph structure in JSON columns for deeply nested or heterogeneous schemas.

Query the connections already in your data

No separate graph database. No sync pipeline. Your Delta tables are the graph.