DBMS > Couchbase vs. Faircom DB vs. PouchDB vs. RocksDB vs. Splice Machine
System Properties Comparison Couchbase vs. Faircom DB vs. PouchDB vs. RocksDB vs. Splice Machine
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Couchbase Originally called Membase Xexclude from comparison | Faircom DB formerly c-treeACE Xexclude from comparison | PouchDB Xexclude from comparison | RocksDB Xexclude from comparison | Splice Machine Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A distributed document store with integrated cache, a powerful search engine, in-built operational and analytical capabilities, and an embedded mobile database | Native high-speed multi-model DBMS for relational and key-value store data simultaneously accessible through SQL and NoSQL APIs. | JavaScript DBMS with an API inspired by CouchDB | Embeddable persistent key-value store optimized for fast storage (flash and RAM) | Open-Source SQL RDBMS for Operational and Analytical use cases with native Machine Learning, powered by Hadoop and Spark | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Key-value store Relational DBMS | Document store | Key-value store | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.couchbase.com | www.faircom.com/products/faircom-db | pouchdb.com | rocksdb.org | splicemachine.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.couchbase.com | docs.faircom.com/docs/en/UUID-7446ae34-a1a7-c843-c894-d5322e395184.html | pouchdb.com/guides | github.com/facebook/rocksdb/wiki | splicemachine.com/how-it-works | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Couchbase, Inc. | FairCom Corporation | Apache Software Foundation | Facebook, Inc. | Splice Machine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2011 | 1979 | 2012 | 2013 | 2014 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | Server: 7.2, June 2023; Mobile: 3.1, March 2022; Couchbase Capella (DBaaS), June 2023 | V12, November 2020 | 7.1.1, June 2019 | 8.11.4, April 2024 | 3.1, March 2021 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Business Source License (BSL 1.1); Commercial licenses also available | commercial Restricted, free version available | Open Source | Open Source BSD | Open Source AGPL 3.0, commercial license available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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++, Go and Erlang | ANSI C, C++ | JavaScript | C++ | Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Windows | AIX FreeBSD HP-UX Linux NetBSD OS X QNX SCO Solaris VxWorks Windows easily portable to other OSs | server-less, requires a JavaScript environment (browser, Node.js) | Linux | Linux OS X Solaris Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema free, schema optional, schema required, partial schema, | schema-free | schema-free | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes, ANSI SQL Types, JSON, typed binary structures | no | 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes via views | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL++, extends ANSI SQL to JSON for operational, transactional, and analytic use cases | yes, ANSI SQL with proprietary extensions | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | CLI Client HTTP REST Kafka Connector Native language bindings for CRUD, Query, Search and Analytics APIs Spark Connector Spring Data | ADO.NET Direct SQL JDBC JPA ODBC RESTful HTTP/JSON API RESTful MQTT/JSON API RPC | HTTP REST only for PouchDB Server JavaScript API | C++ API Java API | JDBC Native Spark Datasource ODBC | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net C Go Java JavaScript Node.js Kotlin PHP Python Ruby Scala | .Net C C# C++ Java JavaScript (Node.js and browser) PHP Python Visual Basic | JavaScript | C C++ Go Java Perl Python Ruby | C# C++ Java JavaScript (Node.js) Python R Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | Functions and timers in JavaScript and UDFs in Java, Python, SQL++ | yes .Net, JavaScript, C/C++ | View functions in JavaScript | no | yes Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes via the TAP protocol | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Automatic Sharding | File partitioning, horizontal partitioning, sharding Customizable business rules for table partitioning | Sharding with a proxy-based framework, named couchdb-lounge | horizontal partitioning | Shared Nothhing Auto-Sharding, Columnar Partitioning | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication including cross data center replication Source-replica replication | yes, configurable to be parallel or serial, synchronous or asynchronous, uni-directional or bi-directional, ACID-consistent or eventually consistent (with custom conflict resolution). | Multi-source replication also with CouchDB databases Source-replica replication also with CouchDB databases | yes | Multi-source replication Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | no | yes | no | Yes, via Full Spark Integration | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Immediate Consistency selectable on a per-operation basis | Eventual Consistency Immediate Consistency Tunable consistency per server, database, table, and transaction | Eventual Consistency | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | tunable from ACID to Eventually Consistent | no | yes | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes, multi-version concurrency control (MVCC) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | Yes, tunable from durable to delayed durability to in-memory | yes by using IndexedDB, WebSQL or LevelDB as backend | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes Ephemeral buckets | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | User and Administrator separation with password-based and LDAP integrated Authentication. Role-base access control. | Fine grained access rights according to SQL-standard with additional protections for files | 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 services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | CData: Connect to Big Data & NoSQL through standard Drivers. » more | Speedb: A high performance RocksDB-compliant key-value store optimized for write-intensive workloads. » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Couchbase Originally called Membase | Faircom DB formerly c-treeACE | PouchDB | RocksDB | Splice Machine | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Couchbase climbs up the DB-Engines Ranking, increasing its popularity by 10% every month | New kids on the block: database management systems implemented in JavaScript | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Couchbase Survey Finds Enterprises Plan Massive Spend on AI, with Over $21M Allocated in 2023-24 With 67% ownership in Couchbase, Inc. (NASDAQ:BASE), institutional investors have a lot riding on the business Database company Couchbase eyes over $900 million valuation in U.S. IPO Couchbase Announces New Features to Accelerate AI-Powered Adaptive Applications for Customers Couchbase's revenue grows 20% and its stock rises in extended trading provided by Google News | FairCom kicks off new era of database technology USA - English 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 Offline-first web and mobile apps: Top frameworks and components Create Offline Web Apps Using Service Workers & PouchDB — SitePoint provided by Google News | Did Rockset Just Solve Real-Time Analytics? Meta’s Velox Means Database Performance Is Not Subject To Interpretation Linux 6.9 Drives AMD 4th Gen EPYC Performance Even Higher For Some Workloads Power your Kafka Streams application with Amazon MSK and AWS Fargate | Amazon Web Services Intel Linux Optimizations Help AMD EPYC "Genoa" Improve Scaling To 384 Threads 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 Distributed SQL System Review: Snowflake vs Splice Machine Splice Machine takes on big boys of big data with Hadoop RDBMS provided by Google News |
Share this page