DBMS > Citus vs. Couchbase vs. FoundationDB vs. H2 vs. SpatiaLite
System Properties Comparison Citus vs. Couchbase vs. FoundationDB vs. H2 vs. SpatiaLite
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Citus Xexclude from comparison | Couchbase Originally called Membase Xexclude from comparison | FoundationDB Xexclude from comparison | H2 Xexclude from comparison | SpatiaLite Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Created as commercial project in 2013, FoundationDB has been acquired by Apple in March 2015 and was withdrawn from the market. As a consequence, the product was removed from the DB-Engines ranking. In April 2018, Apple open-sourced FoundationDB and it therefore reappears in the ranking. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Scalable hybrid operational and analytics RDBMS for big data use cases based on PostgreSQL | A distributed document store with integrated cache, a powerful search engine, in-built operational and analytical capabilities, and an embedded mobile database | Ordered key-value store. Core features are complimented by layers. | Full-featured RDBMS with a small footprint, either embedded into a Java application or used as a database server. | Spatial extension of SQLite | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Document store | Document store supported via specific layer Key-value store Relational DBMS supported via specific SQL-layer | Relational DBMS | Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store | Key-value store originating from the former Membase product and supporting the Memcached protocol Spatial DBMS using the Geocouch extension Search engine Time Series DBMS Vector DBMS | Spatial DBMS | Relational DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.citusdata.com | www.couchbase.com | github.com/apple/foundationdb | www.h2database.com | www.gaia-gis.it/fossil/libspatialite/index | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.citusdata.com | docs.couchbase.com | apple.github.io/foundationdb | www.h2database.com/html/main.html | www.gaia-gis.it/gaia-sins/spatialite_topics.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Couchbase, Inc. | FoundationDB | Thomas Mueller | Alessandro Furieri | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2010 | 2011 | 2013 | 2005 | 2008 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 8.1, December 2018 | Server: 7.2, June 2023; Mobile: 3.1, March 2022; Couchbase Capella (DBaaS), June 2023 | 6.2.28, November 2020 | 2.2.220, July 2023 | 5.0.0, August 2020 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source AGPL, commercial license also available | Open Source Business Source License (BSL 1.1); Commercial licenses also available | Open Source Apache 2.0 | Open Source dual-licence (Mozilla public license, Eclipse public license) | Open Source MPL 1.1, GPL v2.0 or LGPL v2.1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | 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 | C, C++, Go and Erlang | C++ | Java | C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux | Linux OS X Windows | Linux OS X Windows | All OS with a Java VM | server-less | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | schema-free | schema-free some layers support schemas | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | no some layers support typing | yes | 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. | yes specific XML type available, but no XML query functionality | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes standard, with numerous extensions | SQL++, extends ANSI SQL to JSON for operational, transactional, and analytic use cases | supported in specific SQL layer only | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | ADO.NET JDBC native C library ODBC streaming API for large objects | CLI Client HTTP REST Kafka Connector Native language bindings for CRUD, Query, Search and Analytics APIs Spark Connector Spring Data | JDBC ODBC | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net C C++ Delphi Java JavaScript (Node.js) Perl PHP Python Tcl | .Net C Go Java JavaScript Node.js Kotlin PHP Python Ruby Scala | .Net C C++ Go Java JavaScript Node.js PHP Python Ruby Swift | Java | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions realized in proprietary language PL/pgSQL or with common languages like Perl, Python, Tcl etc. | Functions and timers in JavaScript and UDFs in Java, Python, SQL++ | in SQL-layer only | Java Stored Procedures and User-Defined Functions | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | yes via the TAP protocol | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Automatic Sharding | Sharding | none | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Source-replica replication other methods possible by using 3rd party extensions | Multi-source replication including cross data center replication Source-replica replication | yes | With clustering: 2 database servers on different computers operate on identical copies of a database | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Eventual Consistency Immediate Consistency selectable on a per-operation basis | Linearizable consistency | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes | no | in SQL-layer only | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID | ACID | ACID | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes, multi-version concurrency control (MVCC) | 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 | yes Ephemeral buckets | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | fine grained access rights according to SQL-standard | User and Administrator separation with password-based and LDAP integrated Authentication. Role-base access control. | no | fine grained access rights according to SQL-standard | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | CData: Connect to Big Data & NoSQL through standard Drivers. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Citus | Couchbase Originally called Membase | FoundationDB | H2 | SpatiaLite | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Couchbase climbs up the DB-Engines Ranking, increasing its popularity by 10% every month | Spatial database management systems Ubicloud wants to build an open source alternative to AWS Microsoft acquires Citus Data, re-affirming its commitment to Open Source and accelerating Azure PostgreSQL ... Ubicloud reels in $16M for its open-source cloud platform Distributed PostgreSQL Benchmarks: Azure Cosmos DB, CockroachDB, and YugabyteDB Microsoft Benchmarks Distributed PostgreSQL DBs provided by Google News Database company Couchbase cruises to another solid earnings and revenue beat Couchbase Announces New Features to Accelerate AI-Powered Adaptive Applications for Customers Couchbase (NASDAQ:BASE) Posts Better-Than-Expected Sales In Q1, Next Quarter's Growth Looks Optimistic Couchbase, Inc. (BASE) Tops Q1 EPS by 5c; offers outlook Couchbase Server and Capella to gain vector support provided by Google News FoundationDB team's new venture, Antithesis, raises $47M to enhance software testing Stonebraker Seeks to Invert the Computing Paradigm with DBOS Antithesis raises $47M to launch an automated testing platform for software FoundationDB, a very interesting NoSQL database owned by Apple, is now an open-source project IBM Cloudant pulls plan to fund new foundational layer for CouchDB provided by Google News |
Share this page