Java graph databases compared
Graph databases implemented in Java.
18 active java graph databases are in the catalogue. They are written mostly in Java, 14 are open source, and 9 carry survey feature scores. Apache Giraph, Gaffer, BlazeGraph are no longer active and listed separately below.
| Attribute | Neo4j | OrientDB | ArcadeDB | Stardog | Oracle Graph | JanusGraph |
|---|---|---|---|---|---|---|
| At a glance | ||||||
| Rank | #1 | #11 | #15 | #23 | #30 | #35 |
| Score | 83.3 | 62.9 | 60.7 | 57.4 | 55.6 | 53.4 |
| GitHub stars | 17.2k | 5k | 1.1k | — | — | 5.8k |
| Popularity | 97.3 | 80.4 | 54.1 | 54.6 | 36.8 | 80.3 |
| Activity | 86.7 | 62.5 | 78.6 | 99.1 | 62.5 | 40.2 |
| Community | 90.2 | 57.4 | 54.1 | 35.3 | 62.8 | 36.8 |
| Research | 98.6 | 64.8 | 72.1 | 49.6 | 95.7 | 63.1 |
| Fundamentals | ||||||
| Description | A property graph database that stores data as fixed-size records in linked lists for index-free adjacency traversal. Offers community and commercial editions with an extensive graph algorithms library. | A distributed multi-model database combining graph and document models with TinkerPop support. Features sharding for horizontal scaling and ACID transactions. | A multi-model database inspired by OrientDB, supporting graphs, documents, key-value, time-series, and search. Uses RAFT-based replication for high availability. | 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. | Oracle's graph database capabilities within Oracle Database, supporting both property graphs (SQL/PGQ and PGQL) and RDF/SPARQL. Includes in-memory graph analytics with 60+ built-in algorithms. | An open-source distributed property graph database forked from the Titan codebase. Supports pluggable storage backends (Cassandra, HBase, BerkeleyDB) with ACID transactions and native TinkerPop integration. |
| Vendor | Neo4j Inc | OrientDB Community | ArcadeDB | Stardog Union | Oracle | The Linux Foundation |
| Model | Property Graph | Multiple | Multiple | RDF | Multiple | Property Graph |
| Kind | database | database | database | database | database | database |
| Category | Established | Enterprise | Growing | Enterprise | Enterprise | Established |
| First released | 2007 | 2010 | 2021-09 | 2011 | 2005 | 2017-04 |
| Status | active | active | active | active | active | active |
| License | GPL-3.0 | Apache-2.0 | Apache-2.0 | Proprietary | Proprietary | Apache-2.0 |
| Written in | Java | Java | Java | Java | Java | Java |
| Query languages | Cypher, GQL | SQL, Gremlin | SQL, openCypher, Gremlin, GraphQL | SPARQL, SQL, GraphQL | SQL/PGQ, PGQL, SPARQL | Gremlin |
| gdotv support | yes | no | yes | yes | yes | yes |
Feature scores 31 of 46 rows differ
| Feature | Neo4j | OrientDB | ArcadeDB | Stardog | Oracle Graph | JanusGraph |
|---|---|---|---|---|---|---|
| Community & Business | ||||||
| Active development | ✓ | ✓ | ✓ | 0.5 | ✓ | ✓ |
| Commercial support | ✓ | ✓ | ✓ | ✓ | ✓ | · |
| Live community | ✓ | 0.5 | ✓ | ✓ | 0.5 | ✓ |
| Open Source | ✓ | ✓ | ✓ | · | · | ✓ |
| Pricing | 0.5 | · | ✓ | · | ✓ | ✓ |
| Trendiness | ✓ | 0.25 | · | ✓ | ✓ | 0.5 |
| Deployment | ||||||
| Containerization | ✓ | ✓ | ✓ | ✓ | 0.5 | ✓ |
| Work as dedicated instance | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Work as embedded | ✓ | ✓ | ✓ | · | · | ✓ |
| Testing in-memory version | ✓ | ✓ | · | · | · | ✓ |
| Platform | ||||||
| Operating on Linux | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Operating on Windows | ✓ | ✓ | ✓ | · | ✓ | ✓ |
| SaaS offering | ✓ | · | · | ✓ | ✓ | ✓ |
| Operations | ||||||
| Automatic updates | · | · | ✓ | · | ✓ | · |
| Client side caching | · | · | · | · | ✓ | · |
| Data versioning support | · | · | · | · | ✓ | · |
| Live backups | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Distribution | ||||||
| Cluster Re-balancing | · | · | · | · | 0.5 | · |
| Data Distribution | ✓ | ✓ | · | · | ✓ | ✓ |
| High-Availability | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Query Distribution | ✓ | 0.5 | · | ✓ | ✓ | · |
| Replication support | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Developer Experience | ||||||
| Data types defined | ✓ | ✓ | ✓ | 0.5 | 0.5 | ✓ |
| Logging/Auditing | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Object-Graph Mapper | ✓ | · | · | · | ✓ | · |
| Reactive programming | ✓ | · | ✓ | ✓ | ✓ | · |
| Documentation up-to-date | ✓ | 0.5 | ✓ | ✓ | ✓ | 0.75 |
| Binary protocol | ✓ | ✓ | ✓ | · | ✓ | ✓ |
| CLI | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| GUI | ✓ | ✓ | ✓ | ✓ | ✓ | · |
| Data Model | ||||||
| Multi-database | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Graph-native data | ✓ | · | ✓ | · | ✓ | ✓ |
| REST API | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Query Language | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Transactions | ||||||
| Granular locking | ✓ | · | · | ✓ | ✓ | 0.5 |
| Multiple isolation levels | ✓ | ✓ | ✓ | ✓ | ✓ | 0.5 |
| Read committed transaction | ✓ | ✓ | ✓ | · | ✓ | 0.5 |
| Transaction support | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Schema & Security | ||||||
| Constraints | ✓ | · | ✓ | ✓ | ✓ | ✓ |
| Schema support | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Secondary indexes | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Server side procedures | ✓ | ✓ | ✓ | ✓ | 0.5 | · |
| Triggers | ✓ | ✓ | ✓ | · | ✓ | 0.5 |
| Authentication | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Authorization | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Data encryption | · | ✓ | ✓ | · | ✓ | · |
All 18 engines
| Name | Vendor | Model | Category | GitHub stars | License | Written in | Query languages | Rank |
|---|---|---|---|---|---|---|---|---|
| TinkerGraph | Apache TinkerPop | Property Graph | Established | 2.1k | Apache-2.0 | Java | Gremlin | #7 |
| Ontop | Ontopic | RDF | Established | 938 | Apache-2.0 | Java | SPARQL | #18 |
| Apache Jena Fuseki | Apache Software Foundation | RDF | Established | 1.4k | Apache-2.0 | Java | SPARQL | #22 |
| Eclipse RDF4J | Eclipse Foundation | RDF | Established | 412 | BSD-3-Clause | Java | SPARQL | #25 |
| YouTrackDB | JetBrains | Property Graph | Emerging | 433 | Apache-2.0 | Java | Gremlin, SQL | #31 |
| Aerospike Graph | Aerospike | Property Graph | Enterprise | 1.4k | Apache-2.0 | Java | Gremlin | #39 |
| Apache HugeGraph | Apache Software Foundation | Property Graph | Established | 3.2k | Apache-2.0 | Java | Gremlin, openCypher | #41 |
| DataStax Enterprise | IBM | Property Graph | Established | — | Proprietary | Java | Gremlin, CQL | #50 |
| Ontotext GraphDB | Graphwise | RDF | Enterprise | — | Proprietary | Java | SPARQL | #65 |
| Bitsy | LambdaZen | Property Graph | Emerging | 150 | Apache-2.0 | Java | Gremlin | #103 |
| ONgDB | Graph Foundation | Property Graph | Emerging | 440 | GPL-3.0 OR AGPL-3.0 | Java | Cypher | #128 |
| DozerDB | Graph Foundation | Property Graph | Emerging | 145 | GPL-3.0 | Java | Cypher | #150 |
No longer active
- Apache Giraph — Retired to the Apache Attic in October 2023. Repository is archived and read-only.
- Gaffer — Repository archived by GCHQ; last change June 2025.
- BlazeGraph — Last release in 2019. Project largely dormant, though still used by Wikidata.
- Apache Rya — No development activity since December 2020.
- HyperGraphDB — Sporadic maintenance only since 2024
- Halyard — No development activity since mid-2022.
- Apache Marmotta KiWi — Project retired to the Apache Attic. Repository archived in May 2021.
- InfiniteGraph — Objectivity Inc ceased operations in late 2023.
- HGraphDB — No human development activity since 2024
- Mulgara — No significant development activity in recent years.
- Strabon — Minimal development activity in recent years.
- ChronoGraph — Last meaningful commit several years ago. Minimal community.
- Graphflow — Research prototype from University of Waterloo. Succeeded by Kuzu.