DBMS > Google Cloud Firestore vs. MarkLogic vs. RavenDB vs. VoltDB
System Properties Comparison Google Cloud Firestore vs. MarkLogic vs. RavenDB vs. VoltDB
Please select another system to include it in the comparison.
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Google Cloud Firestore Xexclude from comparison | MarkLogic Xexclude from comparison | RavenDB Xexclude from comparison | VoltDB Xexclude from comparison | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | 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 | Open Source Operational and Transactional Enterprise NoSQL Document Database | Distributed In-Memory NewSQL RDBMS Used for OLTP applications with a high frequency of relatively simple transactions, that can hold all their data in memory | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Document store Native XML DBMS RDF store as of version 7 Search engine | Document store | Relational DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Graph DBMS Spatial DBMS Time Series DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | firebase.google.com/products/firestore | www.marklogic.com | ravendb.net | www.voltdb.com | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | firebase.google.com/docs/firestore | docs.marklogic.com | ravendb.net/docs | docs.voltdb.com | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | MarkLogic Corp. | Hibernating Rhinos | VoltDB Inc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2017 | 2001 | 2010 | 2010 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 11.0, December 2022 | 5.4, July 2022 | 11.3, April 2022 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial | commercial restricted free version is available | Open Source AGPL version 3, commercial license available | Open Source AGPL for Community Edition, commercial license for Enterprise, AWS, and Pro Editions | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | 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++ | C# | Java, C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | hosted | Linux OS X Windows | Linux macOS Raspberry Pi Windows | Linux OS X for development | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free Schema can be enforced | schema-free | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | 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 | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | yes SQL92 | SQL-like query language (RQL) | yes only a subset of SQL 99 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | 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 | .NET Client API F# Client API Go Client API Java Client API NodeJS Client API PHP Client API Python Client API RESTful HTTP API | Java API JDBC RESTful HTTP/JSON API | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Go Java JavaScript JavaScript (Node.js) Objective-C Python | C C# C++ Java JavaScript (Node.js) Perl PHP Python Ruby | .Net C# F# Go Java JavaScript (Node.js) PHP Python Ruby | C# C++ Erlang not officially supported Go Java JavaScript Node.js PHP Python | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes, Firebase Rules & Cloud Functions | yes via XQuery or JavaScript | yes | Java | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes, with Cloud Functions | yes | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | Sharding | Sharding | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication | yes | Multi-source replication | Multi-source replication Source-replica replication | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | Using Cloud Dataflow | yes via Hadoop Connector, HDFS Direct Access and in-database MapReduce jobs | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | 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. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no FOREIGN KEY constraints are not supported | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | yes | ACID can act as a resource manager in an XA/JTA transaction | ACID, Cluster-wide transaction available | ACID Transactions are executed single-threaded within stored procedures | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes Data access is serialized by the server | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes Snapshots and command logging | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes, with Range Indexes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | 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 | Authorization levels configured per client per database | Users and roles with access to stored procedures | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Google Cloud Firestore | MarkLogic | RavenDB | VoltDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cloud-based DBMS's popularity grows at high rates | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Realtime vs Cloud Firestore: Which Firebase Database to go? Google's AI-First Strategy Brings Vector Support To Cloud Databases Google launches Cloud Firestore, a new document database for app developers Google's Cloud-Native NoSQL Database Cloud Firestore Is Now Generally Available Firestore and Python | NoSQL on Google Cloud 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 AI can make logistics data as valuable as intelligence or operational data for mission success 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 provided by Google News | RavenDB Launches Version 6.0 Lightning Fast Queries, Data Integrations, Corax Indexing Engine, and Sharding How I Created a RavenDB Python Client Install the NoSQL RavenDB Data System RavenDB Adds Graph Queries Oren Eini on RavenDB, Including Consistency Guarantees and C# as the Implementation Language provided by Google News | VoltDB Turns to Real-Time Analytics with NewSQL Database VoltDB Launches Active(N) Lossless Cross Data Center Replication VoltDB Upgrades Power, Security of Its In-Memory Database VoltDB Aims for Fast Big Data Development -- ADTmag VoltDB Adds Geospatial Support, Cross-Site Replication provided by Google News |
Share this page