A high-performance, embeddable graph database with a Rust core and no required C dependencies, supporting both Labeled Property Graph (LPG) and RDF data models. Optional allocators (jemalloc/mimalloc) and TLS use C libraries for performance.
Features
- Dual data model support: LPG and RDF with optimized storage for each
- Multi-language queries: GQL, Cypher, Gremlin, GraphQL, SPARQL, and SQL/PGQ (all enabled by default)
- Embeddable with zero external dependencies
- Multi-language bindings: Python (PyO3), Node.js (napi-rs), Go (CGO), WebAssembly (wasm-bindgen)
- In-memory and persistent storage modes
- MVCC transactions with snapshot isolation
Query Language & Data Model Support
| Query Language | LPG | RDF | Status |
|---|---|---|---|
| GQL (ISO/IEC 39075) | ✅ | — | Default |
| Cypher (openCypher 9.0) | ✅ | — | Default |
| Gremlin (Apache TinkerPop) | ✅ | — | Default |
| GraphQL | ✅ | ✅ | Default |
| SPARQL (W3C 1.1) | — | ✅ | Default |
| SQL/PGQ (SQL:2023) | ✅ | — | Default |
Grafeo uses a modular translator architecture where query languages are parsed into ASTs, then translated to a unified logical plan that executes against the appropriate storage backend (LPG or RDF).
Data Models
- LPG (Labeled Property Graph): Nodes with labels and properties, edges with types and properties. Ideal for social networks, knowledge graphs, and application data.
- RDF (Resource Description Framework): Triple-based storage (subject-predicate-object) with SPO/POS/OSP indexes. Ideal for semantic web, linked data, and ontology-based applications.
Installation
By default, all query languages and AI features are enabled (full = languages + ai). Customize with feature groups:
Quick Start
use GrafeoDB;
License
Apache-2.0