DBMS > CouchDB vs. Google Cloud Firestore vs. LevelDB vs. RRDtool vs. Splice Machine
System Properties Comparison CouchDB vs. Google Cloud Firestore vs. LevelDB vs. RRDtool vs. Splice Machine
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | CouchDB stands for "Cluster Of Unreliable Commodity Hardware" Xexclude from comparison | Google Cloud Firestore Xexclude from comparison | LevelDB Xexclude from comparison | RRDtool Xexclude from comparison | Splice Machine Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A native JSON - document store inspired by Lotus Notes, scalable from globally distributed server-clusters down to mobile phones. | 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. | Embeddable fast key-value storage library that provides an ordered mapping from string keys to string values | Industry standard data logging and graphing tool for time series data. RRD is an acronym for round-robin database. The data is stored in a circular buffer, thus the system storage footprint remains constant over time. | Open-Source SQL RDBMS for Operational and Analytical use cases with native Machine Learning, powered by Hadoop and Spark | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Document store | Key-value store | Time Series DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS using the Geocouch extension | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | couchdb.apache.org | firebase.google.com/products/firestore | github.com/google/leveldb | oss.oetiker.ch/rrdtool | splicemachine.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.couchdb.org/en/stable | firebase.google.com/docs/firestore | github.com/google/leveldb/blob/main/doc/index.md | oss.oetiker.ch/rrdtool/doc | splicemachine.com/how-it-works | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation Apache top-level project, originally developed by Damien Katz, a former Lotus Notes developer | Tobias Oetiker | Splice Machine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2005 | 2017 | 2011 | 1999 | 2014 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 3.3.3, December 2023 | 1.23, February 2021 | 1.8.0, 2022 | 3.1, March 2021 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache version 2 | commercial | Open Source BSD | Open Source GPL V2 and FLOSS | Open Source AGPL 3.0, commercial license available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Erlang | C++ | C Implementations in Java (e.g. RRD4J) and C# available | Java | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Android BSD Linux OS X Solaris Windows | hosted | Illumos Linux OS X Windows | HP-UX Linux | Linux OS X Solaris Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free | schema-free | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | no | yes | no | Numeric data only | 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 Exporting into and restoring from XML files possible | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes via views | yes | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | no | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | RESTful HTTP/JSON API | Android gRPC (using protocol buffers) API iOS JavaScript API RESTful HTTP API | in-process shared library Pipes | JDBC Native Spark Datasource ODBC | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# ColdFusion Erlang Haskell Java JavaScript Lisp Lua Objective-C OCaml Perl PHP PL/SQL Python Ruby Smalltalk | Go Java JavaScript JavaScript (Node.js) Objective-C Python | C++ Go Java 3rd party binding JavaScript (Node.js) 3rd party binding Python 3rd party binding | C with librrd library C# with a different implementation of RRDTool Java with a different implementation of RRDTool JavaScript (Node.js) with a different implementation of RRDTool Lua Perl PHP with a wrapper library Python Ruby | C# C++ Java JavaScript (Node.js) Python R Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | View functions in JavaScript | yes, Firebase Rules & Cloud Functions | no | no | yes Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | yes, with Cloud Functions | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding improved architecture with release 2.0 | Sharding | none | none | Shared Nothhing Auto-Sharding, Columnar Partitioning | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication Source-replica replication | Multi-source replication | none | none | Multi-source replication Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | Using Cloud Dataflow | no | no | Yes, via Full Spark Integration | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency | Immediate Consistency | Immediate Consistency | none | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no atomic operations within a single document possible | yes | no | no | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes strategy: optimistic locking | yes | yes | yes by using the rrdcached daemon | yes, multi-version concurrency control (MVCC) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes with automatic compression on writes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users can be defined per database | Access rights for users, groups and roles based on Google Cloud Identity and Access Management. Security Rules for 3rd party authentication using Firebase Auth. | no | no | Access rights for users, groups and roles according to SQL-standard | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CouchDB stands for "Cluster Of Unreliable Commodity Hardware" | Google Cloud Firestore | LevelDB | RRDtool | Splice Machine | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Couchbase climbs up the DB-Engines Ranking, increasing its popularity by 10% every month | Cloud-based DBMS's popularity grows at high rates | Time Series DBMS are the database category with the fastest increase in popularity Time Series DBMS as a new trend? | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | How to Automate A Blog Post App Deployment With GitHub Actions, Node.js, CouchDB, and Aptible HNS IoT Botnet Evolves, Goes Cross-Platform IBM Cloudant pulls plan to fund new foundational layer for CouchDB How to install the CouchDB NoSQL database on Debian Server 11 CouchDB 3.0 ends admin party era • DEVCLASS provided by Google News | Google's AI-First Strategy Brings Vector Support To Cloud Databases Realtime vs Cloud Firestore: Which Firebase Database to go? Google's Cloud Firestore is now generally available Google launches Cloud Firestore, a new document database for app developers Google's Cloud-Native NoSQL Database Cloud Firestore Is Now Generally Available provided by Google News | Pliops unveils XDP-Rocks for RocksDB – Blocks and Files Microsoft Teams stores auth tokens as cleartext in Windows, Linux, Macs XanMod, Liquorix Kernels Offer Some Advantages On AMD Ryzen 5 Notebook Threat Thursday: BlackGuard Infostealer Rises from Russian Underground Markets Rust-Based Info Stealers Abuse GitHub Codespaces provided by Google News | Cacti servers under attack by attackers exploiting CVE-2022-46169 Critical IP spoofing bug patched in Cacti How to install Cacti SNMP Monitor on Ubuntu Installation Guide for Collectd and Collectd-Web to Monitor Server Resources in Linux SNMP: The Little Protocol That Could provided by Google News | Machine learning data pipeline outfit Splice Machine files for insolvency Splice Machine Launches the Splice Machine Feature Store to Simplify Feature Engineering and Democratize Machine ... Splice Machine Launches Feature Store to Simplify Feature Engineering How Splice Machine's Data Platform for Intelligent Apps Works New Splice Machine RDBMS unites OLTP and OLAP provided by Google News |
Share this page