DBMS > Ehcache vs. Neo4j vs. RavenDB vs. Redis vs. Virtuoso
System Properties Comparison Ehcache vs. Neo4j vs. RavenDB vs. Redis vs. Virtuoso
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Ehcache Xexclude from comparison | Neo4j Xexclude from comparison | RavenDB Xexclude from comparison | Redis Xexclude from comparison | Virtuoso Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A widely adopted Java cache with tiered storage options | Scalable, ACID-compliant graph database designed with a high-performance distributed cluster architecture, available in self-hosted and cloud offerings | Open Source Operational and Transactional Enterprise NoSQL Document Database | Popular in-memory data platform used as a cache, message broker, and database that can be deployed on-premises, across clouds, and hybrid environments Redis focuses on performance so most of its design decisions prioritize high performance and very low latencies. | Virtuoso is a multi-model hybrid-RDBMS that supports management of data represented as relational tables and/or property graphs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Key-value store | Graph DBMS | Document store | Key-value store Multiple data types and a rich set of operations, as well as configurable data expiration, eviction and persistence | Document store Graph DBMS Native XML DBMS Relational DBMS RDF store Search engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Graph DBMS Spatial DBMS Time Series DBMS | Document store with RedisJSON Graph DBMS with RedisGraph Spatial DBMS Search engine with RediSearch Time Series DBMS with RedisTimeSeries Vector DBMS | Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.ehcache.org | neo4j.com | ravendb.net | redis.com redis.io | virtuoso.openlinksw.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.ehcache.org/documentation | neo4j.com/docs | ravendb.net/docs | docs.redis.com/latest/index.html redis.io/docs | docs.openlinksw.com/virtuoso | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Terracotta Inc, owned by Software AG | Neo4j, Inc. | Hibernating Rhinos | Redis project core team, inspired by Salvatore Sanfilippo Development sponsored by Redis Inc. | OpenLink Software | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2009 | 2007 | 2010 | 2009 | 1998 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 3.10.0, March 2022 | 5.20, May 2024 | 5.4, July 2022 | 7.2.5, May 2024 | 7.2.11, September 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2; commercial licenses available | Open Source GPL version3, commercial licenses available | Open Source AGPL version 3, commercial license available | Open Source source-available extensions (modules), commercial licenses for Redis Enterprise | Open Source GPLv2, extended commercial license available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | Neo4j Aura: Neo4j’s fully managed cloud service: The zero-admin, always-on graph database for cloud developers. | Aiven for Redis: Fully managed in-memory key-value store for all your caching and speedy lookup needs. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | Java, Scala | C# | C | C | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM | Linux Can also be used server-less as embedded Java database. OS X Solaris Windows | Linux macOS Raspberry Pi Windows | BSD Linux OS X Windows ported and maintained by Microsoft Open Technologies, Inc. | AIX FreeBSD HP-UX Linux OS X Solaris Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free and schema-optional | schema-free | schema-free | yes SQL - Standard relational schema RDF - Quad (S, P, O, G) or Triple (S, P, O) XML - DTD, XML Schema DAV - freeform filesystem objects, plus User Defined Types a/k/a Dynamic Extension Type | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | no | partial Supported data types are strings, hashes, lists, sets and sorted sets, bit arrays, hyperloglogs and geospatial indexes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML support Some form of processing data in XML format, e.g. support for XML data structures, and/or support for XPath, XQuery or XSLT. | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | yes pluggable indexing subsystem, by default Apache Lucene | yes | yes with RediSearch module | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | no | SQL-like query language (RQL) | with RediSQL module | yes SQL-92, SQL-200x, SQL-3, SQLX | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JCache | Bolt protocol Cypher query language Java API Neo4j-OGM Object Graph Mapper RESTful HTTP API Spring Data Neo4j TinkerPop 3 | .NET Client API F# Client API Go Client API Java Client API NodeJS Client API PHP Client API Python Client API RESTful HTTP API | proprietary protocol RESP - REdis Serialization Protocol | ADO.NET GeoSPARQL HTTP API JDBC Jena RDF API ODBC OLE DB RDF4J API RESTful HTTP API Sesame REST HTTP Protocol SOAP webservices SPARQL 1.1 WebDAV XPath XQuery XSLT | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Java | .Net Clojure Elixir Go Groovy Haskell Java JavaScript Perl PHP Python Ruby Scala | .Net C# F# Go Java JavaScript (Node.js) PHP Python Ruby | C C# C++ Clojure Crystal D Dart Elixir Erlang Fancy Go Haskell Haxe Java JavaScript (Node.js) Lisp Lua MatLab Objective-C OCaml Pascal Perl PHP Prolog Pure Data Python R Rebol Ruby Rust Scala Scheme Smalltalk Swift Tcl Visual Basic | .Net C C# C++ Java JavaScript Perl PHP Python Ruby Visual Basic | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | yes User defined Procedures and Functions | yes | Lua; Redis Functions coming in Redis 7 (slides and Github) | yes Virtuoso PL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes Cache Event Listeners | yes via event handler | yes | publish/subscribe channels provide some trigger functionality; RedisGears | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding by using Terracotta Server | yes using Neo4j Fabric | Sharding | Sharding Automatic hash-based sharding with support for hash-tags for manual sharding | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes by using Terracotta Server | Causal Clustering using Raft protocol available in in Enterprise Version only | Multi-source replication | Multi-source replication with Redis Enterprise Pack Source-replica replication Chained replication is supported | Chain, star, and bi-directional replication Multi-source replication Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | yes | through RedisGears | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Tunable Consistency (Strong, Eventual, Weak) | Causal and Eventual Consistency configurable in Causal Cluster setup Immediate Consistency in stand-alone mode | Default ACID transactions on the local node (eventually consistent across the cluster). Atomic operations with cluster-wide ACID transactions. Eventual consistency for indexes and full-text search indexes. | Eventual Consistency Causal consistency can be enabled in Active-Active databases Strong consistency with Redis Raft Strong eventual consistency with Active-Active | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes Relationships in graphs | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | yes supports JTA and can work as an XA resource | ACID | ACID, Cluster-wide transaction available | Atomic execution of command blocks and scripts and optimistic locking | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes Data access is serialized by the server | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes using a tiered cache-storage approach | yes | yes | yes Configurable mechanisms for persistency via snapshots and/or operations logs | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | Users, roles and permissions. Pluggable authentication with supported standards (LDAP, Active Directory, Kerberos) | Authorization levels configured per client per database | Access Control Lists (ACLs): redis.io/docs/management/security/acl LDAP and Role-Based Access Control (RBAC) for Redis Enterprise Mutual TLS authentication: redis.io/docs/management/security/encryption Password-based authentication | Fine-grained Attribute-Based Access Control (ABAC) in addition to typical coarse-grained Role-Based Access Control (RBAC) according to SQL-standard. Pluggable authentication with supported standards (LDAP, Active Directory, Kerberos) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Ehcache | Neo4j | RavenDB | Redis | Virtuoso | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Neo4j delivers graph technology that has been battle tested for performance and scale... » more | Virtuoso is a modern multi-model RDBMS for managing data represented as tabular relations... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | Neo4j is the market leader, graph database category creator, and the most widely... » more | Performance & Scale — as exemplified by DBpedia and the LOD Cloud it spawned, i.e.,... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Real-Time Recommendations Master Data Management Identity and Access Management Network... » more | Used for — Analytics/BI Conceptual Data Virtualization Enterprise Knowledge Graphs... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Over 800 commercial customers and over 4300 startups use Neo4j. Flagship customers... » more | Broad use across enterprises and governments including — European Union (EU) US Government... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | Neo4j boasts the world's largest graph database ecosystem with more than 140 million... » more | Largest installed-base of Multi-Model RDBMS for AI-friendly Knowledge Graphs Platform... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | GPL v3 license that can be used all the places where you might use MySQL. Neo4j Commercial... » more | Available in both Commercial Enterprise and Open Source (GPL v2) Editions Feature... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | This Week in Neo4j: Llamaindex, Semantic Search, Graph Database, Entity Resolution and more Neo4j-Databricks Connector Delivers Deeper Insights, Faster GenAI Development This Week in Neo4j: Podcast, Testing, Knowledge Graph, GenAI and more Neo4j and Snowflake Bring Graph Data Science Into the AI Data Cloud RDF vs. Property Graphs: Choosing the Right Approach for Implementing a Knowledge Graph | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | Navicat for Redis: the award-winning Redis management tool with an intuitive and powerful graphical interface. » more CData: Connect to Big Data & NoSQL through standard Drivers. » more Aiven for Redis: Fully managed in-memory key-value store for all your caching and speedy lookup needs. » more Redisson PRO: The ultra-fast Redis Java Client. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Ehcache | Neo4j | RavenDB | Redis | Virtuoso | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Applying Graph Analytics to Game of Thrones MySQL, PostgreSQL and Redis are the winners of the March ranking The openCypher Project: Help Shape the SQL for Graphs | PostgreSQL is the DBMS of the Year 2018 MySQL, PostgreSQL and Redis are the winners of the March ranking MongoDB is the DBMS of the year, defending the title from last year | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Scaling Australia's Most Popular Online News Sites with Ehcache Atlassian asks customers to patch critical Jira vulnerability Critical Jira Flaw in Atlassian Could Lead to RCE DZone Coding Java JBoss 5 to 7 in 11 steps provided by Google News | Neo4j employs knowledge graphs as part of the AI stack Neo4j Announces Collaboration with Microsoft to Advance GenAI and Data Solutions USA - English - India - English Neo4j graph analytics integrated with Snowflake's AI cloud – Blocks and Files Using Neo4j’s graph database for AI in Azure Neo4j Is Planning IPO on Nasdaq, Largest Owner Greenbridge Says provided by Google News | RavenDB Launches Version 6.0 Lightning Fast Queries, Data Integrations, Corax Indexing Engine, and Sharding Install the NoSQL RavenDB Data System RavenDB Adds Graph Queries Review: NoSQL database RavenDB RavenDB Welcomes David Baruc as Chief Revenue Officer: Seasoned Tech Leader to Drive Global Sales and ... provided by Google News | Redis moves to source-available licenses Redis switches licenses, acquires Speedb to go beyond its core in-memory database Redis acquires storage engine startup Speedb to enhance its open-source database Redis expands data management capabilities with Speedb acquisition Linux Foundation marshals support for open source alternative to Redis provided by Google News |
Share this page