RDF triplestores compared
Databases built on the RDF data model and queried with SPARQL.
19 active rdf triplestores are in the catalogue. They are written mostly in C++ and Java, 13 are open source, and 6 carry survey feature scores. Dydra, Google Cayley, RDF::Trine are no longer active and listed separately below.
| Attribute | | | | | | |
|---|---|---|---|---|---|---|
| At a glance | ||||||
| Rank | #20 | #22 | #31 | #58 | #89 | #120 |
| Score | 58.7 | 57.5 | 55.0 | 45.9 | 38.8 | 24.7 |
| GitHub stars | — | — | 441 | — | — | 367 |
| Popularity | 43.2 | 57.4 | 53.8 | 36.0 | 59.4 | 36.1 |
| Activity | 98.6 | 92.8 | 81.9 | 62.4 | — | 72.1 |
| Community | 57.8 | 36.6 | 35.8 | 31.0 | 31.0 | 31.0 |
| Research | 50.2 | 56.0 | 52.0 | 50.4 | 50.4 | 50.4 |
| Fundamentals | ||||||
| Description | An RDF-based knowledge graph database with OWL 2 reasoning and property graph extensions. Includes Voicebox, an OpenAI-compatible natural language query interface via LLM integration. | An RDF triple store with built-in ontology reasoning capabilities. Supports OWL2 RL materialized reasoning for inferring new triples and federated queries across distributed stores. | An immutable, append-only RDF graph database using JSON-LD as its data format. Features a blockchain-inspired ledger for data provenance and fine-grained access control policies. | An RDF triplestore with ACID transactions, available in free, standard, and enterprise editions. Supports semantic reasoning and inference with configurable rule sets. | An RDF graph OLAP database (formerly AnzoGraph DB) using massively parallel processing (MPP) for analytical workloads. Rebranded under Altair, it supports SPARQL 1.1 with extensions for window aggregates and advanced grouping, plus openCypher query support. | An embedded graph database for Python with built-in persistence, traversal, and semantic vector search. It runs entirely in-process, stores graph data as triples, and exposes Torque, a Python-native API for querying relationships. |
| Vendor | Stardog Union | Franz Inc | Fluree | Ontotext | Altair | NodeFn Inc. |
| Model | RDF | RDF | RDF | RDF | RDF | RDF |
| Kind | database | database | database | database | database | embedded |
| Category | Enterprise | Established | Growing | Enterprise | Enterprise | Emerging |
| First released | 2011 | 2004 | 2018 | 2005 | 2018-10 | 2018-07 |
| Status | active | active | active | active | active | active |
| License | Proprietary | Proprietary | EPL-2.0 | Proprietary | Proprietary | MIT |
| Written in | Java | Common Lisp | Rust | Java | C++ | Python |
| Query languages | SPARQL, SQL, GraphQL | SPARQL, Prolog | FlureeQL, SPARQL, GraphQL | SPARQL | SPARQL, openCypher | Custom API |
| gdotv support | yes | yes | no | yes | no | no |
Feature scores 41 of 46 rows differ
| Feature | Stardog | AllegroGraph | Fluree | Ontotext GraphDB | Altair Graph Lakehouse | CogDB |
|---|---|---|---|---|---|---|
| Community & Business | ||||||
| Active development | 0.5 | ✓ | ✓ | ✓ | ✓ | ✓ |
| Commercial support | ✓ | ✓ | ✓ | ✓ | ✓ | · |
| Live community | ✓ | · | 0.5 | ✓ | · | 0.5 |
| Open Source | · | · | ✓ | · | · | ✓ |
| Pricing | · | ✓ | · | · | ✓ | ✓ |
| Trendiness | ✓ | 0.5 | 0.5 | 0.75 | ✓ | · |
| Deployment | ||||||
| Containerization | ✓ | ✓ | ✓ | ✓ | ✓ | · |
| Work as dedicated instance | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Work as embedded | · | · | ✓ | ✓ | · | ✓ |
| Testing in-memory version | · | · | · | · | ✓ | · |
| Platform | ||||||
| Operating on Linux | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Operating on Windows | · | · | ✓ | ✓ | · | 0.75 |
| SaaS offering | ✓ | ✓ | ✓ | · | · | ✓ |
| Operations | ||||||
| Automatic updates | · | · | ✓ | · | · | · |
| Client side caching | · | ✓ | · | · | · | · |
| Data versioning support | · | ✓ | ✓ | ✓ | ✓ | · |
| Live backups | ✓ | ✓ | ✓ | 0.5 | ✓ | · |
| Distribution | ||||||
| Cluster Re-balancing | · | ✓ | · | · | · | · |
| Data Distribution | · | ✓ | · | 0.75 | ✓ | · |
| High-Availability | ✓ | ✓ | · | ✓ | ✓ | · |
| Query Distribution | ✓ | ✓ | · | 0.75 | ✓ | · |
| Replication support | ✓ | ✓ | · | ✓ | ✓ | · |
| Developer Experience | ||||||
| Data types defined | 0.5 | ✓ | ✓ | ✓ | 0.5 | 0.5 |
| Logging/Auditing | ✓ | ✓ | ✓ | ✓ | ✓ | · |
| Object-Graph Mapper | · | ✓ | · | ✓ | · | · |
| 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 | ✓ | ✓ | · | · | · | · |
| Read committed transaction | · | · | ✓ | ✓ | · | · |
| Transaction support | ✓ | ✓ | ✓ | ✓ | ✓ | · |
| Schema & Security | ||||||
| Constraints | ✓ | ✓ | 0.75 | ✓ | · | · |
| Schema support | ✓ | ✓ | 0.5 | 0.5 | ✓ | · |
| Secondary indexes | ✓ | ✓ | ✓ | ✓ | ✓ | · |
| Server side procedures | ✓ | ✓ | · | ✓ | · | · |
| Triggers | · | ✓ | · | · | · | · |
| Authentication | ✓ | ✓ | ✓ | ✓ | ✓ | · |
| Authorization | ✓ | ✓ | ✓ | ✓ | ✓ | · |
| Data encryption | · | · | ✓ | · | ✓ | · |
All 19 engines
| Name | Vendor | Model | Category | GitHub stars | License | Written in | Query languages | Rank |
|---|---|---|---|---|---|---|---|---|
| QLever | University of Freiburg | RDF | Emerging | 873 | Apache-2.0 | C++ | SPARQL | #12 |
| Ontop | Ontopic | RDF | Established | 895 | Apache-2.0 | Java | SPARQL | #19 |
| Eclipse RDF4J | Eclipse Foundation | RDF | Established | 409 | BSD-3-Clause | Java | SPARQL | #25 |
| Oxigraph | Oxigraph Community | RDF | Emerging | 1.8k | Apache-2.0 OR MIT | Rust | SPARQL | #26 |
| RDFLib | RDFLib Community | RDF | Established | 2.5k | BSD-3-Clause | Python | SPARQL | #27 |
| Apache Jena Fuseki | Apache Software Foundation | RDF | Established | 1.4k | Apache-2.0 | Java | SPARQL | #28 |
| Comunica | Comunica Association | RDF | Emerging | 575 | MIT | TypeScript | SPARQL, GraphQL | #34 |
| gStore | Peking University | RDF | Emerging | 836 | BSD-3-Clause | C++ | SPARQL | #57 |
| RDFox | Samsung | RDF | Enterprise | — | Proprietary | C++ | SPARQL | #61 |
| Attean | Gregory Todd Williams | RDF | Emerging | 19 | Artistic-2.0 | Perl | SPARQL | #79 |
| Quadstore | Jacopo Scazzosi | RDF | Emerging | 236 | MIT | TypeScript | SPARQL | #110 |
| Tentris | DICE Research Group, Paderborn University | RDF | Emerging | — | Proprietary | C++ | SPARQL | #133 |
| OxiRS | — | RDF | Emerging | 74 | Apache-2.0 | Rust | SPARQL | #134 |
No longer active
- Dydra — Public SDK last updated 2012. Core engine is closed-source with limited visibility.
- Google Cayley — No significant development activity since 2020.
- RDF::Trine — Deprecated in favour of the Attean framework. Last release was v1.019 in January 2018.
- Redland — Mature project with periodic maintenance. Last release 2.0.18 in October 2024.
- 4store — Sporadic maintenance only. Originally developed circa 2009.
- BrightstarDB — No active development since 2015.
- Apache Rya — No development activity since December 2020.
- BlazeGraph — Last release in 2019. Project largely dormant, though still used by Wikidata.
- Halyard — No development activity since mid-2022.
- Apache Marmotta KiWi — Project retired to the Apache Attic. Repository archived in May 2021.
- SparkleDB — No evidence of activity since approximately 2018. Website defunct.
- Parliament — Last release v2.8.1 in June 2022. Limited recent activity.
- Akutan — Repository archived February 2022. Never reached production readiness.
- Mulgara — No significant development activity in recent years.
- Strabon — Minimal development activity in recent years.
- RedStore — Mature project with minimal recent activity.