DBMS > Firebase Realtime Database vs. GridDB vs. Immudb vs. PouchDB vs. TypeDB
System Properties Comparison Firebase Realtime Database vs. GridDB vs. Immudb vs. PouchDB vs. TypeDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Firebase Realtime Database Xexclude from comparison | GridDB Xexclude from comparison | Immudb Xexclude from comparison | PouchDB Xexclude from comparison | TypeDB formerly named Grakn Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Cloud-hosted realtime document store. iOS, Android, and JavaScript clients share one Realtime Database instance and automatically receive updates with the newest data. | Scalable in-memory time series database optimized for IoT and Big Data | An open source immutable (append-only) database with cryptographic verification which makes it tamper-resistant and fully auditable. | JavaScript DBMS with an API inspired by CouchDB | TypeDB provides developers with an expressive, customizable type system to manage their data using an award-winning query language, TypeQL, while building on a high-performance, distributed architecture. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Time Series DBMS | Key-value store | Document store | Graph DBMS The type-theoretic data model of TypeDB subsumes the graph database model. Object oriented DBMS The data model of TypeDB comprises object-oriented features such as class inheritance and interfaces. Relational DBMS The type-theoretic data model of TypeDB subsumes the relational database model. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Key-value store Relational DBMS | Relational DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | firebase.google.com/products/realtime-database | griddb.net | github.com/codenotary/immudb immudb.io | pouchdb.com | typedb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | firebase.google.com/docs/database | docs.griddb.net | docs.immudb.io | pouchdb.com/guides | typedb.com/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Google acquired by Google 2014 | Toshiba Corporation | Codenotary | Apache Software Foundation | Vaticle | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2013 | 2020 | 2012 | 2016 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 5.1, August 2022 | 1.2.3, April 2022 | 7.1.1, June 2019 | 2.28.3, June 2024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial | Open Source AGPL version 3 and Apache License, version 2.0 , commercial license (standard and advanced editions) also available | Open Source Apache Version 2.0 | Open Source | Open Source GPL Version 3, commercial licenses available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | yes | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | Go | JavaScript | Java | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | hosted | Linux | BSD Linux macOS Solaris Windows z/OS | server-less, requires a JavaScript environment (browser, Node.js) | Linux OS X Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes | schema-free | schema-free | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes numerical, string, blob, geometry, boolean, timestamp | 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 | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | yes via views | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | SQL92, SQL-like TQL (Toshiba Query Language) | SQL-like syntax | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Android iOS JavaScript API RESTful HTTP API | JDBC ODBC Proprietary protocol RESTful HTTP/JSON API | gRPC protocol PostgreSQL wire protocol | HTTP REST only for PouchDB Server JavaScript API | gRPC protocol TypeDB Console (shell) TypeDB Studio (IDE) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Java JavaScript Objective-C | C C++ Go Java JavaScript (Node.js) Perl PHP Python Ruby | .Net Go Java JavaScript (Node.js) Python | JavaScript | All JVM based languages C C++ Java JavaScript (Node.js) Python Rust | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | limited functionality with using 'rules' | no | no | View functions in JavaScript | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | Callbacks are triggered when data changes | yes | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | Sharding with a proxy-based framework, named couchdb-lounge | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Source-replica replication | Multi-source replication also with CouchDB databases Source-replica replication also with CouchDB databases | Synchronous replication via raft | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | Connector for using GridDB as an input source and output destination for Hadoop MapReduce jobs | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency if the client is offline Immediate Consistency if the client is online | Immediate consistency within container, eventual consistency across containers | Immediate Consistency | Eventual Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no | no substituted by the relationship feature | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | yes | ACID at container level | ACID | no | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes by using IndexedDB, WebSQL or LevelDB as backend | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | no | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | yes, based on authentication and database rules | Access rights for users can be defined per database | no | yes at REST API level; other APIs in progress | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Firebase Realtime Database | GridDB | Immudb | PouchDB | TypeDB formerly named Grakn | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | GridDB is a highly scalable, in-memory time series database optimized for IoT and... » more | TypeDB is a polymorphic database with a conceptual data model, a strong subtyping... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | 1. Optimized for IoT Equipped with Toshiba's proprietary key-container data model... » more | TypeDB provides a new level of expressivity, extensibility, interoperability, and... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Factory IoT, Automative Industry, Energy, BEMS, Smart Community, Monitoring system. » more | Life sciences : TypeDB makes working with biological data much easier and accelerates... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Denso International [see use case ] An Electric Power company [see use case ] Ishinomaki... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | GitHub trending repository » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | Open Source license (AGPL v3 & Apache v2) Commercial license (subscription) » more | 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Firebase Realtime Database | GridDB | Immudb | PouchDB | TypeDB formerly named Grakn | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cloud-based DBMS's popularity grows at high rates | New kids on the block: database management systems implemented in JavaScript | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Realtime vs Cloud Firestore: Which Firebase Database to go? Atos cybersecurity blog: Misconfigured Firebase: A real-time cyber threat Don't be like these 900+ websites and expose millions of passwords via Firebase Google launches Firebase Genkit, a new open source framework for building AI-powered apps Hundreds of Google Firebase websites might have leaked data online provided by Google News | General Availability of GridDB® 5.5 Enterprise Edition ~Enhancing the efficiency of IoT system development and ... General Availability of GridDB 5.3 Enterprise Edition ~ Major Enhancement in IoT and Time Series Data Analysis ... Toshiba launches cloudy managed IoT database service running its own GridDB General Availability of GridDB 5.1 Enterprise Edition ~ Continuous database usage in the event of data center failure ... GridDB Use case Large-scale high-speed processing of smart meter data following the deregulation of electrical power ... provided by Google News | Codenotary brings its immutable database to the cloud ImmuDB and Codenotary: It's a database, but the company isn't Immudb: Open-source database, built on a zero trust model How Open-Source Database immudb Plans to Handle All That Metaverse Data immudb (immutable database) 'tamper-proof' database - Open Source Insider provided by Google News | Building an Offline First App with PouchDB — SitePoint Getting Started with PouchDB Client-Side JavaScript Database — SitePoint 3 Reasons To Think Offline First Create Offline Web Apps Using Service Workers & PouchDB — SitePoint Offline-first web and mobile apps: Top frameworks and components provided by Google News | An Enterprise Data Stack Using TypeDB | by Daniel Crowe Spacecraft Engineering Models: How to Migrate UML to TypeQL Speedb Goes Open Source With Its Speedb Data Engine, A Drop-in Replacement for RocksDB Modelling Biomedical Data for a Drug Discovery Knowledge Graph How Roche Discovered Novel Potential Gene Targets with TypeDB provided by Google News |
Share this page