Rust graph databases compared

Graph databases implemented in Rust.

32 active rust graph databases are in the catalogue. They are written mostly in Rust, 24 are open source, and 4 carry survey feature scores. CozoDB is no longer active and listed separately below.

Attribute SurrealDB #7 ▲1 Strong TypeDB #9 ▼2 Strong HelixDB #14 ▼3 Strong Oxigraph #16 ▼1 Strong Fluree #23 ▼2 Strong NodeDB #66 ▲4 Growing
At a glance
Rank #7#9#14#16#23#66
Score 60.559.456.454.750.838.8
GitHub stars 33.3k4.5k6.3k2k478243
Popularity 71.470.156.061.546.937.1
Activity 64.573.278.267.770.041.9
Community 60.449.548.440.044.444.3
Research 31.126.726.739.630.726.7
Fundamentals
Description A multi-model database written in Rust that combines document, graph, and relational paradigms. Uses inter-document record links for graph traversals, with ACID transactions and row-level permissions.A polymorphic database that natively models inheritance hierarchies, dependencies, and conceptual schemas using its TypeQL query language. Supports clustering for scalability and a cloud-agnostic deployment model.An open-source graph-vector database combining graph traversals with vector and keyword search, targeting AI and RAG applications.An RDF triple store written in Rust and built on RocksDB. Available as a standalone server, embeddable library, and via Python and JavaScript bindings.A temporal RDF graph database written in Rust. Each transaction is an immutable, content-addressed commit, so data can be queried as of any point in history, with git-style branching, triple-level access policies, and built-in full-text, vector, and geospatial search.A multi-model database written in Rust that runs document, key-value, columnar, timeseries, spatial, vector, and array engines in a single binary over shared storage, with graph and full-text search as cross-engine overlays on any collection. Its graph overlay uses a CSR adjacency index with 13 built-in algorithms and a Cypher-subset MATCH syntax, and fuses graph traversal with vector search in a single query for GraphRAG. Speaks SQL over a native MessagePack protocol and the PostgreSQL wire protocol, alongside HTTP/REST, WebSocket, RESP, and ILP.
Vendor SurrealDBTypeDBHelixDBOxigraph CommunityFlureeNodeDB-Lab
Model MultipleOtherOtherRDFRDFMultiple
Kind databasedatabasedatabasedatabasedatabasedatabase
Category GrowingGrowingEmergingEmergingGrowingEmerging
First released 2022-0720162025-022020-082018-082026-04
Status activeactiveactiveactiveactiveactive
License BUSL-1.1MPL-2.0Apache-2.0Apache-2.0 OR MITBUSL-1.1BUSL-1.1
Written in RustRustRustRustRustRust
Query languages SurrealQL, GraphQL, GQLTypeQLHelixQL, openCypherSPARQLSPARQL, JSON-LD Query, openCypher, GraphQLSQL, openCypher
gdotv support nononoyesnono

Feature scores 25 of 46 rows differ

Feature SurrealDBTypeDBHelixDBOxigraphFlureeNodeDB
Community & Business
Active development ✓✓——✓✓
Commercial support ✓✓——✓✓
Live community 0.75✓——0.75✓
Open Source 0.5✓——✓0.5
Pricing ✓✓——✓·
Trendiness ✓✓——0.5·
Deployment
Containerization ✓✓——✓✓
Work as dedicated instance ✓✓——✓✓
Work as embedded ✓·——✓✓
Testing in-memory version ✓✓——✓·
Platform
Operating on Linux ✓✓——✓✓
Operating on Windows ✓✓——✓0.5
SaaS offering ✓✓——✓·
Operations
Automatic updates ··——✓·
Client side caching ··——··
Data versioning support ✓·——✓✓
Live backups ··——✓✓
Distribution
Cluster Re-balancing ✓·——·✓
Data Distribution ✓·——·✓
High-Availability ✓✓——✓✓
Query Distribution ✓✓——·✓
Replication support ✓✓——✓✓
Developer Experience
Data types defined 0.50.5——✓✓
Logging/Auditing ✓✓——✓✓
Object-Graph Mapper ✓·——·0.5
Reactive programming ✓✓——·✓
Documentation up-to-date ✓✓——✓✓
Binary protocol ✓✓——✓✓
CLI ✓✓——✓✓
GUI ✓✓——✓·
Data Model
Multi-database ✓·——·✓
Graph-native data ✓·——✓✓
REST API ✓·——✓✓
Query Language ✓0.5——✓✓
Transactions
Granular locking ··——··
Multiple isolation levels 0.50.5——0.50.5
Read committed transaction ✓✓——✓✓
Transaction support ✓✓——✓✓
Schema & Security
Constraints ✓✓——✓✓
Schema support ✓✓——✓✓
Secondary indexes ✓✓——✓✓
Server side procedures ✓·——·✓
Triggers ✓✓——·✓
Authentication ✓✓——✓✓
Authorization ✓✓——✓✓
Data encryption 0.5·——✓✓

All 32 engines

NameVendorModel CategoryGitHub starsLicenseWritten in Query languagesRank
Atomic Server Ontola Other Emerging 1.6k MIT Rust Custom API #17
Raphtory Pometry Property Graph Emerging 651 GPL-3.0 Rust GraphQL #26
OmniGraph ModernRelay Property Graph Emerging 1.9k MIT Rust Custom API #29
Grafeo GrafeoDB Multiple Emerging 828 Apache-2.0 Rust GQL, openCypher, SPARQL, Gremlin, GraphQL, SQL/PGQ #34
HydraDB HydraDB Property Graph Emerging 13.1k AGPL-3.0 Rust openCypher #51
Lance Graph LanceDB Inc Property Graph Emerging 186 Apache-2.0 Rust SQL, openCypher #71
Minigraf — Other Emerging 225 MIT OR Apache-2.0 Rust Datalog #73
lance-csr HDC Labs Property Graph Emerging 22 Apache-2.0 Rust openCypher #97
agdb Agnesoft Property Graph Emerging 144 Apache-2.0 Rust Custom API #98
KGLite Kristian dF Kollsgård Property Graph Emerging 75 MIT Rust openCypher, Custom API #100
froGQL PLEIAD Property Graph Emerging 14 MIT Rust GQL #104
RushDB RushDB Property Graph Emerging 326 Apache-2.0 Rust Custom API, SQL, Cypher, Gremlin #106
pgGraph Evokoa Property Graph Emerging 1.1k Apache-2.0 Rust SQL #108
Data Graphs Data Language Multiple Emerging — Proprietary Rust openCypher, GQL #111
GraphLite DeepGraph AI Property Graph Emerging 235 Apache-2.0 Rust GQL #112
MemGQL Memgraph Multiple Emerging — Proprietary Rust GQL #114
TribleSpace — Other Emerging 71 MIT OR Apache-2.0 Rust Custom API #116
Grust QueryGraph Property Graph Emerging 27 Apache-2.0 Rust Custom API #125
OxiRS — RDF Emerging 101 Apache-2.0 Rust SPARQL #136
AstraeaDB AstraeaDB Property Graph Emerging 6 MIT Rust GQL, Cypher #140
oxilite Volodymyr Pavlyshyn RDF Emerging 66 MIT OR Apache-2.0 Rust SPARQL, openCypher #141
LoraDB LoraDB Property Graph Emerging 24 BUSL-1.1 Rust Cypher #143
selene-db Justin Scott Property Graph Emerging 4 MIT OR Apache-2.0 Rust GQL #148
pg_petgraph alitrack Other Emerging 2 MIT Rust SQL #153
StromaDB Katsuhide Tsuruta Property Graph Emerging 3 Elastic-2.0 Rust Custom API #154
Traverse Truespar Property Graph Emerging — Proprietary Rust openCypher, GQL —

No longer active