# Apache AGE vs JanusGraph

**Leader by Vioscale score:** JanusGraph

| Attribute | Apache AGE | JanusGraph |
|---|---|---|
| **Vioscale score** | 42.6 (72% (medium)) | 52.7 (70% (medium)) |
| activity.commits_last_30d | 8 | 9 |
| adoption.dependent_repos | 1 | 250 |
| adoption.github_stars | 4,783 | 5,829 |
| adoption.package_downloads_weekly | 2,200 | - |
| deployment.options | `{"on_prem":true,"self_hosted":true}` | `{"on_prem":true,"self_hosted":true}` |
| description.long | Apache AGE is a PostgreSQL extension that enables graph database capabilities, allowing users to represent and analyze data as nodes, edges, and properties. It provides Cypher-like query syntax while maintaining PostgreSQL's SQL support and ACID transaction guarantees. | A database system that stores and queries extremely large graphs spread across multiple machines, enabling many users to run complex lookups simultaneously with strong transaction guarantees and support for batch analytics. |
| features.capabilities | `{"storage":"native","workload":"both","deployment":"embedded","consistency":"strong","distributed":"clustered","graph_model":"property_graph","licence_class":"permissive","query_language":"openCypher / Cypher-like SQL","replication_ha":true,"standard_support":true,"acid_transactions":"full"}` | `{"storage":"pluggable","workload":"both","deployment":"self_hosted","consistency":"tunable","distributed":"sharded","graph_model":"property_graph","licence_class":"permissive","query_language":"Gremlin","replication_ha":true,"full_text_search":"via_index","standard_support":true,"acid_transactions":"full"}` |
| integrations.count | 2 | 14 |
| integrations.list | `[{"name":"LangChain"},{"name":"pgvector"}]` | `[{"name":"Apache Cassandra"},{"name":"Apache HBase"},{"name":"Google Cloud Bigtable"},{"name":"Oracle BerkeleyDB"},{"name":"ScyllaDB"},{"name":"Elasticsearch"},{"name":"Apache Solr"},{"name":"Apache Lucene"},{"name":"Apache Spark"},{"name":"Aerospike"},{"name":"DynamoDB"},{"name":"FoundationDB"},{"name":"Gremlin"},{"name":"Apache TinkerPop"}]` |
| language.primary | C | Java |
| license.spdx | Apache-2.0 | - |
| platform.support | - | `{"cli":true,"web":true}` |
| pricing | - | `{"type":"open_source","summary":"Fully open source under Apache 2 license. No commercial licensing required.","freeTier":true,"sourceUrl":"https://janusgraph.org","retrievedAt":"2026-08-14T21:32:49.930Z"}` |
| pricing.free_tier | - | yes |
| pricing.model | - | commercial |
| pricing.price_level | - | free |
| pricing.transparent | - | yes |
| release.cadence_days | 20 | 74 |
| release.history | `[{"url":"https://github.com/apache/age/releases/tag/PG18/v1.8.0-rc0","date":"2026-07-09T00:21:23Z","type":"stable","version":"PG18/v1.8.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG17/v1.7.0-rc0","date":"2026-02-11T17:08:27Z","type":"stable","version":"PG17/v1.7.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG18/v1.7.0-rc0","date":"2026-01-21T20:26:32Z","type":"stable","version":"PG18/v1.7.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG15/v1.6.0-rc0","date":"2025-11-20T18:41:38Z","type":"stable","version":"PG15/v1.6.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG14/v1.6.0-rc0","date":"2025-11-20T18:44:58Z","type":"stable","version":"PG14/v1.6.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG17/v1.6.0-rc0","date":"2025-09-22T19:16:21Z","type":"stable","version":"PG17/v1.6.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG16/v1.6.0-rc0","date":"2025-09-04T16:45:06Z","type":"stable","version":"PG16/v1.6.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG14/v1.5.0-rc0","date":"2024-01-10T17:58:13Z","type":"stable","version":"PG14/v1.5.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG13/v1.5.0-rc0","date":"2024-01-10T19:48:57Z","type":"stable","version":"PG13/v1.5.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG12/v1.5.0-rc0","date":"2024-01-10T20:54:29Z","type":"stable","version":"PG12/v1.5.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG11/v1.5.0-rc0","date":"2024-01-11T00:34:23Z","type":"stable","version":"PG11/v1.5.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG15/v1.5.0-rc0","date":"2024-01-09T22:47:55Z","type":"stable","version":"PG15/v1.5.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG16/v1.5.0-rc0","date":"2024-01-08T23:26:51Z","type":"stable","version":"PG16/v1.5.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG15/v1.4.0-rc0","date":"2023-08-22T23:11:08Z","type":"stable","version":"PG15/v1.4.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG14/v1.4.0-rc0","date":"2023-08-22T23:08:17Z","type":"stable","version":"PG14/v1.4.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG13/v1.4.0-rc0","date":"2023-08-22T23:18:25Z","type":"stable","version":"PG13/v1.4.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG12/v1.4.0-rc0","date":"2023-08-22T23:21:26Z","type":"stable","version":"PG12/v1.4.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG11/v1.4.0-rc0","date":"2023-08-22T23:28:16Z","type":"stable","version":"PG11/v1.4.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG11/v1.3.0-rc0","date":"2023-04-28T00:12:57Z","type":"stable","version":"PG11/v1.3.0-rc0"},{"url":"https://github.com/apache/age/releases/tag/PG12/v1.3.0-rc1","date":"2023-04-05T18:10:17Z","type":"stable","version":"PG12/v1.3.0-rc1"}]` | `[{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v1.1.0","date":"2024-11-09T01:29:58Z","type":"stable","version":"v1.1.0"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v1.0.1","date":"2024-11-08T21:41:28Z","type":"stable","version":"v1.0.1"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v1.0.0","date":"2023-10-22T02:40:57Z","type":"stable","version":"v1.0.0"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v0.6.4","date":"2023-10-09T05:14:24Z","type":"stable","version":"v0.6.4"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v1.0.0-rc2","date":"2023-02-26T14:20:07Z","type":"prerelease","version":"v1.0.0-rc2"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v0.6.3","date":"2023-02-20T22:06:55Z","type":"stable","version":"v0.6.3"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v1.0.0-rc1","date":"2022-12-08T09:15:08Z","type":"prerelease","version":"v1.0.0-rc1"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v0.6.2","date":"2022-05-31T09:35:37Z","type":"stable","version":"v0.6.2"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v0.6.1","date":"2022-01-19T12:51:43Z","type":"stable","version":"v0.6.1"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v0.6.0","date":"2021-09-03T12:33:53Z","type":"stable","version":"v0.6.0"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v0.5.3","date":"2020-12-25T12:09:56Z","type":"stable","version":"v0.5.3"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v0.5.2","date":"2020-05-06T00:49:42Z","type":"stable","version":"v0.5.2"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v0.5.1","date":"2020-04-04T17:21:58Z","type":"stable","version":"v0.5.1"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v0.5.0","date":"2020-03-12T05:40:36Z","type":"stable","version":"v0.5.0"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v0.4.1","date":"2020-01-15T16:40:54Z","type":"stable","version":"v0.4.1"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v0.3.3","date":"2020-01-14T17:40:44Z","type":"stable","version":"v0.3.3"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v0.4.0","date":"2019-07-02T19:27:38Z","type":"stable","version":"v0.4.0"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v0.3.2","date":"2019-06-17T14:29:03Z","type":"stable","version":"v0.3.2"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v0.2.3","date":"2019-05-22T01:26:16Z","type":"stable","version":"v0.2.3"},{"url":"https://github.com/JanusGraph/janusgraph/releases/tag/v0.2.2","date":"2018-10-09T18:04:43Z","type":"stable","version":"v0.2.2"}]` |
| reliability.status_page | - | yes |
| security.scorecard | - | 6.5 |
| security.vulnerabilities | `{"count":1,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=pypi&package_name=apache-age-python&per_page=100","last_12m":0,"max_severity":"HIGH"}` | `{"count":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=maven&package_name=org.janusgraph%3Ajanusgraph-core&per_page=100","last_12m":0,"max_severity":null}` |

## Capabilities (Graph Databases)

| Capability | Apache AGE | JanusGraph |
|---|:--:|:--:|
| **Model** |  |  |
| Graph model | Property graph | Property graph |
| Query language(s) | openCypher / Cypher-like SQL | Gremlin |
| **Transactions** |  |  |
| ACID transactions | Full | Full |
| Consistency model | Strong | Tunable |
| **Architecture** |  |  |
| Storage | Native graph | Pluggable backend |
| Distributed / scale | Clustered | Sharded |
| Replication / HA | ✓ | ✓ |
| OLTP vs OLAP | Both | Both |
| **Deployment** |  |  |
| Deployment | Embedded | Self-hosted |
| **Search** |  |  |
| Full-text search | - | Via index |
| Built-in vector search | - | - |
| **Licensing** |  |  |
| Licence class | Permissive OSS | Permissive OSS |
| **Portability** |  |  |
| openCypher / TinkerPop standard | ✓ | ✓ |

*Source: Vioscale. Generated 2026-09-01T14:43:27.035Z. "-" = undocumented, not absent.*
