DBMS > CockroachDB vs. EsgynDB vs. Firebase Realtime Database vs. GBase vs. Google Cloud Bigtable
System Properties Comparison CockroachDB vs. EsgynDB vs. Firebase Realtime Database vs. GBase vs. Google Cloud Bigtable
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | CockroachDB Xexclude from comparison | EsgynDB Xexclude from comparison | Firebase Realtime Database Xexclude from comparison | GBase Xexclude from comparison | Google Cloud Bigtable Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | CockroachDB is a distributed database architected for modern cloud applications. It is wire compatible with PostgreSQL and backed by a Key-Value Store, which is either RocksDB or a purpose-built derivative, called Pebble. | Enterprise-class SQL-on-Hadoop solution, powered by Apache Trafodion | Cloud-hosted realtime document store. iOS, Android, and JavaScript clients share one Realtime Database instance and automatically receive updates with the newest data. | Widely used RDBMS in China, including analytical, transactional, distributed transactional, and cloud-native data warehousing. | Google's NoSQL Big Data database service. It's the same database that powers many core Google services, including Search, Analytics, Maps, and Gmail. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Relational DBMS | Document store | Relational DBMS | Key-value store Wide column store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.cockroachlabs.com | www.esgyn.cn | firebase.google.com/products/realtime-database | www.gbase.cn | cloud.google.com/bigtable | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.cockroachlabs.com/docs | firebase.google.com/docs/database | cloud.google.com/bigtable/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Cockroach Labs | Esgyn | Google acquired by Google 2014 | General Data Technology Co., Ltd. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2015 | 2015 | 2012 | 2004 | 2015 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 24.1.0, May 2024 | GBase 8a, GBase 8s, GBase 8c | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache 2.0, commercial license available | commercial | commercial | commercial | commercial | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Go | C++, Java | C, Java, Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux macOS Windows | Linux | hosted | Linux | hosted | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | dynamic schema | yes | schema-free | yes | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes, wire compatible with PostgreSQL | yes | no | Standard with numerous extensions | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC | ADO.NET JDBC ODBC | Android iOS JavaScript API RESTful HTTP API | ADO.NET C API JDBC ODBC | gRPC (using protocol buffers) API HappyBase (Python library) HBase compatible API (Java) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C# C++ Clojure Go Java JavaScript (Node.js) PHP Python Ruby Rust | All languages supporting JDBC/ODBC/ADO.Net | Java JavaScript Objective-C | C# | C# C++ Go Java JavaScript (Node.js) Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | Java Stored Procedures | limited functionality with using 'rules' | user defined functions | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | Callbacks are triggered when data changes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | horizontal partitioning (by key range) all tables are translated to an ordered KV store and then broken down into 64MB ranges, which are then used as replicas in RAFT | Sharding | horizontal partitioning (by range, list and hash) and vertical partitioning | Sharding | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication using RAFT | Multi-source replication between multi datacenters | yes | Internal replication in Colossus, and regional replication between two clusters in different zones | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | Eventual Consistency if the client is offline Immediate Consistency if the client is online | Immediate Consistency | Immediate consistency (for a single cluster), Eventual consistency (for two or more replicated clusters) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes | yes | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID | yes | ACID | Atomic single-row operations | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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. | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Role-based access control | fine grained access rights according to SQL-standard | yes, based on authentication and database rules | yes | Access rights for users, groups and roles based on Google Cloud Identity and Access Management (IAM) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CockroachDB | EsgynDB | Firebase Realtime Database | GBase | Google Cloud Bigtable | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cloud-based DBMS's popularity grows at high rates | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Cockroach Labs shakes up its licensing to force bigger companies to pay CockroachDB scuttles away from open source Core offering CockroachDB retires self-hosted Core offering, makes Enterprise version free for companies under $10M in annual revenue Cockroach Labs Deepens Partnership with Google Cloud, CockroachDB Selected to Join Google Distributed Cloud Now CockroachDB Ditches Open-Source License provided by Google News | Realtime vs Cloud Firestore: Which Firebase Database to Choose Don't be like these 900+ websites and expose millions of passwords via Firebase Misconfigured Firebase instances leaked 19 million plaintext passwords Misconfigured firebase: A real-time cyber threat Google launches Firebase Genkit, a new open source framework for building AI-powered apps provided by Google News | Google Cloud adds graph processing to Spanner, SQL support to Bigtable Google introduces Bigtable SQL access and Spanner's new AI-ready features Google's AI-First Strategy Brings Vector Support To Cloud Databases Google Cloud Adds GenAI, Core Enhancements Across Data Platform Google Introduces Autoscaling for Cloud Bigtable for Optimizing Costs provided by Google News |
Share this page