DBMS > etcd vs. FoundationDB vs. MarkLogic vs. Microsoft Azure Cosmos DB vs. TinkerGraph
System Properties Comparison etcd vs. FoundationDB vs. MarkLogic vs. Microsoft Azure Cosmos DB vs. TinkerGraph
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | etcd Xexclude from comparison | FoundationDB Xexclude from comparison | MarkLogic Xexclude from comparison | Microsoft Azure Cosmos DB former name was Azure DocumentDB Xexclude from comparison | TinkerGraph Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Created as commercial project in 2013, FoundationDB has been acquired by Apple in March 2015 and was withdrawn from the market. As a consequence, the product was removed from the DB-Engines ranking. In April 2018, Apple open-sourced FoundationDB and it therefore reappears in the ranking. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A distributed reliable key-value store | Ordered key-value store. Core features are complimented by layers. | Operational and transactional Enterprise NoSQL database | Globally distributed, horizontally scalable, multi-model database service | A lightweight, in-memory graph engine that serves as a reference implementation of the TinkerPop3 API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Key-value store | Document store supported via specific layer Key-value store Relational DBMS supported via specific SQL-layer | Document store Native XML DBMS RDF store as of version 7 Search engine | Document store Graph DBMS Key-value store Wide column store | Graph DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | etcd.io github.com/etcd-io/etcd | github.com/apple/foundationdb | www.marklogic.com | azure.microsoft.com/services/cosmos-db | tinkerpop.apache.org/docs/current/reference/#tinkergraph-gremlin | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | etcd.io/docs github.com/etcd-io/etcd/tree/master/Documentation | apple.github.io/foundationdb | docs.marklogic.com | learn.microsoft.com/azure/cosmos-db | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | FoundationDB | MarkLogic Corp. | Microsoft | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2013 | 2001 | 2014 | 2009 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 3.4, August 2019 | 6.2.28, November 2020 | 11.0, December 2022 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2.0 | Open Source Apache 2.0 | commercial restricted free version is available | commercial | Open Source Apache 2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Go | C++ | C++ | Java | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | FreeBSD Linux Windows experimental | Linux OS X Windows | Linux OS X Windows | hosted | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free some layers support schemas | schema-free Schema can be enforced | schema-free | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | no | no some layers support typing | yes | yes JSON types | 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 | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | no | yes | yes All properties auto-indexed by default | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | supported in specific SQL layer only | yes SQL92 | SQL-like query language | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | gRPC JSON over HTTP | Java API Node.js Client API ODBC proprietary Optic API Proprietary Query API, introduced with version 9 RESTful HTTP API SPARQL WebDAV XDBC XQuery XSLT | DocumentDB API Graph API (Gremlin) MongoDB API RESTful HTTP API Table API | TinkerPop 3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net C C++ Clojure Erlang Go Haskell Java JavaScript (Node.js) Perl PHP Python R Ruby Rust Scala Tcl | .Net C C++ Go Java JavaScript Node.js PHP Python Ruby Swift | C C# C++ Java JavaScript (Node.js) Perl PHP Python Ruby | .Net C# Java JavaScript JavaScript (Node.js) MongoDB client drivers written for various programming languages Python | Groovy Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | in SQL-layer only | yes via XQuery or JavaScript | JavaScript | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes, watching key changes | no | yes | JavaScript | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | Sharding Implicit feature of the cloud service | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Using Raft consensus algorithm to ensure data replication with strong consistency among multiple replicas. | yes | yes | yes Implicit feature of the cloud service | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | yes via Hadoop Connector, HDFS Direct Access and in-database MapReduce jobs | with Hadoop integration Integration with Hadoop/HDInsight on Azure* | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Linearizable consistency | Immediate Consistency | Bounded Staleness Consistent Prefix Eventual Consistency Immediate Consistency Consistency level configurable on request level Session Consistency | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | in SQL-layer only | no | no | yes Relationships in graphs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID | ACID can act as a resource manager in an XA/JTA transaction | Multi-item ACID transactions with snapshot isolation within a partition | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | optional | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes, with Range Indexes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | no | Role-based access control at the document and subdocument levels | Access rights can be defined down to the item level | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | CData: Connect to Big Data & NoSQL through standard Drivers. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
etcd | FoundationDB | MarkLogic | Microsoft Azure Cosmos DB former name was Azure DocumentDB | TinkerGraph | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | CoreOS updates its Tectonic container platform with the latest Kubernetes release, etcd as a service Monitor Amazon EKS Control Plane metrics using AWS Open Source monitoring services | Amazon Web Services Public preview: AKS cluster control plane metrics in managed Prometheus | Azure updates ETCD directives don't go well with RBI's stellar reputation How can corporates use the ETCD platform to hedge their forex? Gaurang Somaiya explains provided by Google News | FoundationDB team's new venture, Antithesis, raises $47M to enhance software testing Stonebraker Seeks to Invert the Computing Paradigm with DBOS Antithesis raises $47M to launch an automated testing platform for software Deno adds scaleable messaging with new Queues feature, sparks debate about proprietary services • DEVCLASS IBM Cloudant pulls plan to fund new foundational layer for CouchDB provided by Google News | MarkLogic “The NoSQL Database”. In the MarkLogic Query Console, you can… | by Abhay Srivastava | Apr, 2024 Database Platform to Simplify Complex Data | Progress Marklogic ABN AMRO Moves Progress-Powered Credit Store App to Azure Cloud; Achieves 40% Faster Data Processing, Lower ... Seven Quick Steps to Setting Up MarkLogic Server in Kubernetes Progress's $355m move for MarkLogic sets the tone for 2023 provided by Google News | Public preview: Change partition key of a container in Azure Cosmos DB (NoSQL API) | Azure updates General availability: Microsoft Entra ID integration with Azure Cosmos DB for PostgreSQL | Azure updates Azure Synapse Link for Cosmos DB: New Analytics Capabilities Evaluating Performance: CosmosDB vs. Azure SQL Azure Cosmos DB joins the AI toolchain provided by Google News | Automated testing of Amazon Neptune data access with Apache TinkerPop Gremlin | Amazon Web Services Simple Deployment of a Graph Database: JanusGraph | by Edward Elson Kosasih Why developers like Apache TinkerPop, an open source framework for graph computing | Amazon Web Services InfiniteGraph Gets Support for Common Graph Database Language and More Introducing Gremlin query hints for Amazon Neptune | AWS Database Blog provided by Google News |
Share this page