DBMS > AgensGraph vs. Datomic vs. KeyDB vs. Memgraph vs. YugabyteDB
System Properties Comparison AgensGraph vs. Datomic vs. KeyDB vs. Memgraph vs. YugabyteDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | AgensGraph Xexclude from comparison | Datomic Xexclude from comparison | KeyDB Xexclude from comparison | Memgraph Xexclude from comparison | YugabyteDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Multi-model database supporting relational and graph data models and built upon PostgreSQL | Datomic builds on immutable values, supports point-in-time queries and uses 3rd party systems for durability | An ultra-fast, open source Key-value store fully compatible with Redis API, modules, and protocols | An open source graph database built for real-time streaming and compatible with Neo4j | High-performance distributed SQL database for global, internet-scale applications. Wire and feature compatible with PostgreSQL. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Graph DBMS Relational DBMS | Relational DBMS | Key-value store | Graph DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Wide column store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | bitnine.net/agensgraph | www.datomic.com | github.com/Snapchat/KeyDB keydb.dev | memgraph.com | www.yugabyte.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | bitnine.net/documentation | docs.datomic.com | docs.keydb.dev | memgraph.com/docs | docs.yugabyte.com github.com/yugabyte/yugabyte-db | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Social network pages | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Bitnine Global Inc. | Cognitect | EQ Alpha Technology Ltd. | Memgraph Ltd | Yugabyte Inc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2016 | 2012 | 2019 | 2017 | 2017 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 2.1, December 2018 | 1.0.7075, December 2023 | 2.19, September 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache License 2.0 | commercial limited edition free | Open Source BSD-3 | Open Source BSL 1.1; commercial license for enterprise edition available | Open Source Apache 2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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. | YugabyteDB Managed is the fully managed database-as-a-service offering of YugabyteDB. Get started quickly, and effortlessly ensure continuous availability and limitless scale of your cloud native applications. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C | Java, Clojure | C++ | C and C++ | C and C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Windows | All OS with a Java VM | Linux | Linux | Linux OS X | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | depending on used data model | yes | schema-free | schema-free and schema-optional | depending on used data model | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | partial Supported data types are strings, hashes, lists, sets and sorted sets, bit arrays, hyperloglogs and geospatial indexes | yes | 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 | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes by using the Redis Search module | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes | no | no | no | yes, PostgreSQL compatible | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Cypher Query Language JDBC | RESTful HTTP API | Proprietary protocol RESP - REdis Serialization Protoco | Bolt protocol Cypher query language | JDBC YCQL, an SQL-based flexible-schema API with its roots in Cassandra Query Language YSQL - a fully relational SQL API that is wire compatible with the SQL language in PostgreSQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C Java JavaScript Python | Clojure Java | 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++ Elixir Go Haskell Java JavaScript PHP Python Ruby Scala | C C# C++ Go Java JavaScript (Node.js) PHP Python Ruby Rust Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | yes Transaction Functions | Lua | yes sql, plpgsql, C | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | By using transaction functions | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | no, but can be realized using table inheritance | none But extensive use of caching in the application peers | Sharding | Sharding dynamic graph partitioning | Hash and Range Sharding, row-level geo-partitioning | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Source-replica replication | none But extensive use of caching in the application peers | Multi-source replication Source-replica replication | Multi-source replication using RAFT | Based on Raft distributed consensus protocol, minimum 3 replicas for continuous availability | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | Eventual Consistency Strong eventual consistency with CRDTs | Immediate Consistency | Strong consistency on writes and tunable consistency on reads | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes | no | no | yes relationships in graphs | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID | Optimistic locking, atomic execution of commands blocks and scripts | ACID with snapshot isolation | Distributed ACID with Serializable & Snapshot Isolation. Inspired by Google Spanner architecture. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes, multi-version concurrency control (MVCC) | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes using external storage systems (e.g. Cassandra, DynamoDB, PostgreSQL, Couchbase and others) | yes Configurable mechanisms for persistency via snapshots and/or operations logs | yes with periodic snapshot and write-ahead logging (WAL) of changes | yes based on RocksDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes recommended only for testing and development | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | fine grained access rights according to SQL-standard | no | simple password-based access control and ACL | Users, roles and permissions | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
AgensGraph | Datomic | KeyDB | Memgraph | YugabyteDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Memgraph directly connects to your streaming infrastructure so you and your team... » more | YugabyteDB is an open source distributed SQL database for cloud native transactional... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | Business Source License ensures a future for the Memgraph community MAGE algorithm... » more | PostgreSQL compatible: Get instantly productive with a PostgreSQL compatible RDBMS.... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Graph algorithms in bioinformatics Social network analysis Cryptocurrency network... » more | Systems of record and engagement for cloud native applications that require resilience,... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | 2 Million+ lifetime clusters deployed, 6.5K+ GitHub stars, 7K YugabyteDB Community... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | You can check out our pricing model and licenses on the company website . » more | Apache 2.0 license for the database » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
AgensGraph | Datomic | KeyDB | Memgraph | YugabyteDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Graph DBMS Performance Comparison AgensGraph vs. Neo4j Bitnine revisualizes database industry through AgensGraph Bitnine Releases AgensGraph 2.1, the Multi-model Graph Database Optimized for the Legacy Environment AGE - The Open Source PostgreSQL Extension For Graph Database Functionality Bitnine: The Newly Revealed 'AI Teacher' Powered by Graph Database Delivers Hyper-Personalized Learning ... provided by Google News | Nubank buys firm behind Clojure programming language Architecting Software for Leverage TerminusDB Takes on Data Collaboration with a git-Like Approach Brazil’s Nubank acquires US software firm Cognitect, creator of Clojure and Datomic James Dixon Imagines A Data Lake That Matters provided by Google News | Oh, snap! Snap snaps up database developer KeyDB Garnet–open-source faster cache-store speeds up applications, services Snap Acquires KeyDB for Open-Source Services Microsoft open-sources Garnet cache-store -- a Redis rival? Dragonfly 1.0 Released For What Claims To Be The World's Fastest In-Memory Data Store provided by Google News | Enhance Your Network Analysis with the Power of a Graph DB Graph database company Memgraph raises $9.34M Graph Database Market to grow at a CAGR of 19.9% from 2022 to 2027|Increased demand for low-latency queries is a ... Croatian graph database startup Memgraph raises €8M with Microsoft as key investor, plans to boost R&D Making Your Own Memory Graph To Detect Memory Issues On iOS provided by Google News | Yugabyte Achieves PCI DSS Level 1 Compliance, Validating Secure and Scalable Distributed PostgreSQL for ... YugabyteDB Becomes First Distributed SQL Database Vendor to Complete CIS Benchmark The surprising link between Formula One and enterprise PostgreSQL optimisation Yugabyte Embraces 'No Downtime, No Limits,' as the Theme of the Upcoming Distributed SQL Summit Asia Can Yugabyte Become The Defacto Database For Large-Scale, Cloud Native Applications? provided by Google News |
Share this page