DBMS > EventStoreDB vs. RavenDB vs. SurrealDB vs. Tarantool vs. TerminusDB
System Properties Comparison EventStoreDB vs. RavenDB vs. SurrealDB vs. Tarantool vs. TerminusDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | EventStoreDB Xexclude from comparison | RavenDB Xexclude from comparison | SurrealDB Xexclude from comparison | Tarantool Xexclude from comparison | TerminusDB ![]() | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Industrial-strength, open-source database solution built from the ground up for event sourcing. | Open Source Operational and Transactional Enterprise NoSQL Document Database | A fully ACID transactional, developer-friendly, multi-model DBMS | In-memory computing platform with a flexible data schema for efficiently building high-performance applications | Scalable Graph Database platform making enterprise data available by exploiting inferred entities and relationships | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Event Store | Document store | Document store Graph DBMS | Document store Key-value store Relational DBMS | Graph DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Graph DBMS Spatial DBMS Time Series DBMS | Spatial DBMS ![]() | Document store RDF store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.eventstore.com | ravendb.net | surrealdb.com | www.tarantool.io | terminusdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | developers.eventstore.com | ravendb.net/docs | surrealdb.com/docs | www.tarantool.io/en/doc | terminusdb.github.io/terminusdb/# | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Event Store Limited | Hibernating Rhinos | SurrealDB Ltd | VK | DataChemist Ltd. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2010 | 2022 | 2008 | 2018 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 21.2, February 2021 | 5.4, July 2022 | v1.5.0, May 2024 | 2.10.0, May 2022 | 11.0.0, January 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License ![]() | Open Source | Open Source ![]() | Open Source | Open Source ![]() | Open Source ![]() | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only ![]() | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) ![]() Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C# | Rust | C and C++ | Prolog, Rust | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux Windows | Linux macOS Raspberry Pi Windows | Linux macOS Windows | BSD Linux macOS | Linux | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free | Flexible data schema: relational definition for tables with ability to store json-like documents in columns | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing ![]() | no | yes | string, double, decimal, uuid, integer, blob, boolean, datetime | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML support ![]() | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL ![]() | SQL-like query language (RQL) | SQL-like query language | Full-featured ANSI SQL support | SQL-like query language (WOQL) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | .NET Client API F# Client API Go Client API Java Client API NodeJS Client API PHP Client API Python Client API RESTful HTTP API | GraphQL RESTful HTTP API WebSocket | Open binary protocol | OWL RESTful HTTP API WOQL (Web Object Query Language) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net C# F# Go Java JavaScript (Node.js) PHP Python Ruby | Deno Go JavaScript (Node.js) Rust | C C# C++ Erlang Go Java JavaScript Lua Perl PHP Python Rust | JavaScript Python | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts ![]() | yes | Lua, C and SQL stored procedures | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | yes, before/after data modification events, on replication events, client session events | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods ![]() | Sharding | Sharding, partitioned with virtual buckets by user defined affinity key. Live resharding for scale up and scale down without maintenance downtime. | Graph Partitioning | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods ![]() | Multi-source replication | Asynchronous replication with multi-master option Configurable replication topology (full-mesh, chain, star) Synchronous quorum replication (with Raft) | Journaling Streams | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce ![]() | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts ![]() | 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. | Casual consistency across sharding partitions Eventual consistency within replicaset partition ![]() Immediate Consistency within single instance Sequential consistency including linearizable read within replicaset partition ![]() | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys ![]() | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts ![]() | ACID, Cluster-wide transaction available | ACID | ACID, with serializable isolation and linearizable read (within partition); Configurable MVCC (within partition); No cross-shard distributed transactions | ACID | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency ![]() | yes | yes | yes, cooperative multitasking | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability ![]() | yes | yes | yes, write ahead logging | yes ![]() | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities ![]() | yes, full featured in-memory storage engine with persistence | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts ![]() | Authorization levels configured per client per database | yes, based on authentication and database rules | Access Control Lists Mutual TLS authentication for Tarantol Enterprise Password based authentication Role-based access control (RBAC) and LDAP for Tarantol Enterprise Users and Roles | Role-based access control | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendorWe invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and servicesWe invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EventStoreDB | RavenDB | SurrealDB | Tarantool | TerminusDB ![]() | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Data processing speed and reliability: in-memory synchronous replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the 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 | SD Times Open-Source Project of the Week: SurrealDB Meet Tobie Morgan Hitchcock, CEO & Co-Founder Of SurrealDB Cloud, privacy and AI: Trends defining the future of data and databases SurrealDB raises $6M for its database-as-a-service offering Introducing SurrealDB: A Quantum Leap in Database Technology provided by Google News | Tarantool Announces New Enterprise Version With Enhanced Scaling and Monitoring Capabilities Deploying Tarantool Cartridge applications with zero effort (Part 1) VShard — horizontal scaling in Tarantool Accelerating PHP connectors for Tarantool using Async, Swoole, and Parallel provided by Google News | How TerminusDB is commercializing its open source graph database TerminusDB Takes on Data Collaboration with a git-Like Approach Trinity College spinout TerminusDB secures €3.6m in investment [MCR2030-CAMS-ARISE-UNDRR Webinar] Preventing cascading failures of critical assets: Using the Open-Source ... Irish start-ups received €28m from Enterprise Ireland in 2021 provided by Google News |
Share this page