DBMS > Google Cloud Firestore vs. Google Cloud Spanner vs. H2 vs. HyperSQL vs. YDB
System Properties Comparison Google Cloud Firestore vs. Google Cloud Spanner vs. H2 vs. HyperSQL vs. YDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Google Cloud Firestore Xexclude from comparison | Google Cloud Spanner Xexclude from comparison | H2 Xexclude from comparison | HyperSQL ![]() | YDB 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. | A horizontally scalable, globally consistent, relational database service. It is the externalization of the core Google database that runs the biggest aspects of Google, like Ads and Google Play. | Full-featured RDBMS with a small footprint, either embedded into a Java application or used as a database server. | Multithreaded, transactional RDBMS written in Java ![]() | A distributed fault-tolerant database service, with high availability, scalability, immediate consistency and ACID transactions and providing an Amazon DynamoDB compatible API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Relational DBMS | Relational DBMS | Relational DBMS | Document store Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | firebase.google.com/products/firestore | cloud.google.com/spanner | www.h2database.com | hsqldb.org | github.com/ydb-platform/ydb ydb.tech | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | firebase.google.com/docs/firestore | cloud.google.com/spanner/docs | www.h2database.com/html/main.html | hsqldb.org/web/hsqlDocsFrame.html | ydb.tech/en/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Thomas Mueller | Yandex | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2017 | 2017 | 2005 | 2001 | 2019 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 2.2.220, July 2023 | 2.7.2, June 2023 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License ![]() | commercial | commercial | Open Source ![]() | Open Source ![]() | Open Source ![]() | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only ![]() | yes | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) ![]() Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | Java | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | hosted | hosted | All OS with a Java VM | All OS with a Java VM ![]() | Linux | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes | yes | yes | Flexible Schema (defined schema, partial schema, schema free) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing ![]() | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML support ![]() | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL ![]() | no | yes ![]() | yes | yes | SQL-like query language (YQL) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Android gRPC (using protocol buffers) API iOS JavaScript API RESTful HTTP API | gRPC (using protocol buffers) API JDBC ![]() RESTful HTTP API | JDBC ODBC | HTTP API ![]() JDBC ODBC | RESTful HTTP API (DynamoDB compatible) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Go Java JavaScript JavaScript (Node.js) Objective-C Python | Go Java JavaScript (Node.js) Python | Java | All languages supporting JDBC/ODBC Java | Go Java JavaScript (Node.js) PHP Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts ![]() | yes, Firebase Rules & Cloud Functions | no | Java Stored Procedures and User-Defined Functions | Java, SQL | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes, with Cloud Functions | no | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods ![]() | Sharding | Sharding | none | none | Sharding | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods ![]() | Multi-source replication | Multi-source replication with 3 replicas for regional instances. | With clustering: 2 database servers on different computers operate on identical copies of a database | none | Active-passive shard replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce ![]() | Using Cloud Dataflow | yes ![]() | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts ![]() | Immediate Consistency | Immediate Consistency | Immediate Consistency | Immediate Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys ![]() | no | yes ![]() | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts ![]() | yes | ACID ![]() | ACID | ACID | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency ![]() | yes | yes | yes, multi-version concurrency control (MVCC) | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability ![]() | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities ![]() | no | yes | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts ![]() | Access rights for users, groups and roles based on Google Cloud Identity and Access Management. Security Rules for 3rd party authentication using Firebase Auth. | Access rights for users, groups and roles based on Google Cloud Identity and Access Management (IAM) | fine grained access rights according to SQL-standard | fine grained access rights according to SQL-standard | Access rights defined for Yandex Cloud users | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Google Cloud Spanner | H2 | HyperSQL ![]() | YDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cloud-based DBMS's popularity grows at high rates | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Google's AI-First Strategy Brings Vector Support To Cloud Databases Realtime vs Cloud Firestore: Which Firebase Database to go? Google launches Firebase Genkit, a new open source framework for building AI-powered apps Google's Cloud Firestore is now generally available Google's Cloud-Native NoSQL Database Cloud Firestore Is Now Generally Available provided by Google News | Google Improves Cloud Spanner: More Compute and Storage without Price Increase Google turns up the heat on AWS, claims Cloud Spanner is half the cost of DynamoDB Google makes its Cloud Spanner database service faster and more cost-efficient Google Cloud just fired a major volley at AWS as the cloud wars heat up Google Spanner: When Do You Need to Move to It? provided by Google News | HyperSQL DataBase flaw leaves library vulnerable to RCE Introduction to JDBC with HSQLDB tutorial provided by Google News | Russian Court Sues Yandex CEO For LGBT Propaganda Case Personal Data Protection Service Initiates Probe into Yandex.Go App’s Data Processing Data leak from Russian delivery app shows dining habits of the secret police Yandex code leak: Why hack of ‘Russian Google’s’ ranking factors has spooked the SEO industry Russian secret police data leaked by food delivery app including where they live and what they eat... provided by Google News |
Share this page