DBMS > Amazon DocumentDB vs. Google Cloud Firestore vs. MarkLogic vs. SwayDB vs. TypeDB
System Properties Comparison Amazon DocumentDB vs. Google Cloud Firestore vs. MarkLogic vs. SwayDB vs. TypeDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Amazon DocumentDB Xexclude from comparison | Google Cloud Firestore Xexclude from comparison | MarkLogic Xexclude from comparison | SwayDB Xexclude from comparison | TypeDB formerly named Grakn Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Fast, scalable, highly available, and fully managed MongoDB-compatible database service | Cloud Firestore is an auto-scaling document database for storing, syncing, and querying data for mobile and web apps. It offers seamless integration with other Firebase and Google Cloud Platform products. | Operational and transactional Enterprise NoSQL database | An embeddable, non-blocking, type-safe key-value store for single or multiple disks and in-memory storage | TypeDB is a strongly-typed database with a rich and logical type system and TypeQL as its query language | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Document store | Document store Native XML DBMS RDF store as of version 7 Search engine | Key-value store | Graph DBMS Relational DBMS Often described as a 'hyper-relational' database, since it implements the 'Entity-Relationship Paradigm' to manage complex data structures and ontologies. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | aws.amazon.com/documentdb | firebase.google.com/products/firestore | www.marklogic.com | swaydb.simer.au | typedb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | aws.amazon.com/documentdb/resources | firebase.google.com/docs/firestore | docs.marklogic.com | typedb.com/docs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | MarkLogic Corp. | Simer Plaha | Vaticle | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2019 | 2017 | 2001 | 2018 | 2016 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 11.0, December 2022 | 2.26.3, January 2024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial | commercial | commercial restricted free version is available | Open Source GNU Affero GPL V3.0 | Open Source GPL Version 3, commercial licenses available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | yes | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | Scala | Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | hosted | hosted | Linux OS X Windows | Linux OS X Windows | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free | schema-free Schema can be enforced | schema-free | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | no | 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 | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | no | yes SQL92 | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | proprietary protocol using JSON (MongoDB compatible) | Android gRPC (using protocol buffers) API iOS JavaScript API RESTful HTTP API | 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 | gRPC protocol TypeDB Console (shell) TypeDB Studio (Visualisation software- previously TypeDB Workbase) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Go Java JavaScript (Node.js) PHP Python | Go Java JavaScript JavaScript (Node.js) Objective-C Python | C C# C++ Java JavaScript (Node.js) Perl PHP Python Ruby | Java Kotlin Scala | All JVM based languages Groovy Java JavaScript (Node.js) Python Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | yes, Firebase Rules & Cloud Functions | yes via XQuery or JavaScript | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes, with Cloud Functions | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | Sharding | Sharding | none | Sharding by using Cassandra | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-availability zones for high availability, asynchronous replication for up to 15 read replicas | Multi-source replication | yes | none | Multi-source replication by using Cassandra | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no may be implemented via Amazon Elastic MapReduce (Amazon EMR) | Using Cloud Dataflow | yes via Hadoop Connector, HDFS Direct Access and in-database MapReduce jobs | no | yes by using Apache Kafka and Apache Zookeeper | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | Immediate Consistency | Immediate Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no typically not used, however similar functionality with DBRef possible | no | no | no | no substituted by the relationship feature | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | Atomic single-document operations | yes | ACID can act as a resource manager in an XA/JTA transaction | Atomic execution of operations | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes, with Range Indexes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users and roles | Access rights for users, groups and roles based on Google Cloud Identity and Access Management. Security Rules for 3rd party authentication using Firebase Auth. | Role-based access control at the document and subdocument levels | no | yes at REST API level; other APIs in progress | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Amazon DocumentDB | Google Cloud Firestore | MarkLogic | SwayDB | TypeDB formerly named Grakn | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | TypeDB is a polymorphic database with a conceptual data model, a strong subtyping... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | TypeDB provides a new level of expressivity, extensibility, interoperability, and... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Life sciences : TypeDB makes working with biological data much easier and accelerates... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | Apache f or language drivers, and AGPL and Commercial for the database server. The... » 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Amazon DocumentDB | Google Cloud Firestore | MarkLogic | SwayDB | TypeDB formerly named Grakn | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cloud-based DBMS's popularity grows at high rates | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Mask sensitive Amazon DocumentDB log data with Amazon CloudWatch Logs data protection | Amazon Web Services Reduce cost and improve performance by migrating to Amazon DocumentDB 5.0 | Amazon Web Services Vector search for Amazon DocumentDB (with MongoDB compatibility) is now generally available | Amazon Web Services Run complex queries on massive amounts of data stored on your Amazon DocumentDB clusters using Apache Spark ... Game Developer's Guide to Amazon DocumentDB (with MongoDB compatibility) Part Three: Operation Best Practices ... provided by Google News | Realtime vs Cloud Firestore: Which Firebase Database to go? Google's AI-First Strategy Brings Vector Support To Cloud Databases Google’s Firebase gets AI extensions, opens up its marketplace Google's Cloud Firestore is now generally available Essentials for Working With Firestore in Python | by Lynn G. Kwong provided by Google News | 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 Progress to acquire PE-backed data platform MarkLogic for $355m provided by Google News | An Enterprise Data Stack Using TypeDB | by Daniel Crowe Speedb's Data Storage Engine Goes Open Source Speedb Goes Open Source With Its Speedb Data Engine, A Drop-in Replacement for RocksDB Modelling Biomedical Data for a Drug Discovery Knowledge Graph 195 Data Science Libraries You Should Reconsider Using | by Dimitris Effrosynidis provided by Google News |
Share this page