DBMS > BaseX vs. Couchbase vs. Firebase Realtime Database vs. Manticore Search vs. PouchDB
System Properties Comparison BaseX vs. Couchbase vs. Firebase Realtime Database vs. Manticore Search vs. PouchDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | BaseX Xexclude from comparison | Couchbase Originally called Membase Xexclude from comparison | Firebase Realtime Database Xexclude from comparison | Manticore Search Xexclude from comparison | PouchDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Light-weight Native XML DBMS with support for XQuery 3.0 and interactive GUI. | A distributed document store with integrated cache, a powerful search engine, in-built operational and analytical capabilities, and an embedded mobile database | Cloud-hosted realtime document store. iOS, Android, and JavaScript clients share one Realtime Database instance and automatically receive updates with the newest data. | Multi-storage database for search, including full-text search. | JavaScript DBMS with an API inspired by CouchDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Native XML DBMS | Document store | Document store | Search engine | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Time Series DBMS using the Manticore Columnar Library | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | basex.org | www.couchbase.com | firebase.google.com/products/realtime-database | manticoresearch.com | pouchdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.basex.org | docs.couchbase.com | firebase.google.com/docs/database | manual.manticoresearch.com | pouchdb.com/guides | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | BaseX GmbH | Couchbase, Inc. | Google acquired by Google 2014 | Manticore Software | Apache Software Foundation | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2007 | 2011 | 2012 | 2017 | 2012 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 11.0, June 2024 | Server: 7.2, June 2023; Mobile: 3.1, March 2022; Couchbase Capella (DBaaS), June 2023 | 6.0, February 2023 | 7.1.1, June 2019 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source BSD license | Open Source Business Source License (BSL 1.1); Commercial licenses also available | commercial | Open Source GPL version 2 | Open Source | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | C, C++, Go and Erlang | C++ | JavaScript | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Windows | Linux OS X Windows | hosted | FreeBSD Linux macOS Windows | server-less, requires a JavaScript environment (browser, Node.js) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free | schema-free | Fixed schema | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | no XQuery supports types | yes | yes | Int, Bigint, Float, Timestamp, Bit, Int array, Bigint array, JSON, Boolean | 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 | Can index from XML | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | yes full-text index on all search fields | yes via views | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | SQL++, extends ANSI SQL to JSON for operational, transactional, and analytic use cases | no | SQL-like query language | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Java API RESTful HTTP API RESTXQ WebDAV XML:DB XQJ | CLI Client HTTP REST Kafka Connector Native language bindings for CRUD, Query, Search and Analytics APIs Spark Connector Spring Data | Android iOS JavaScript API RESTful HTTP API | Binary API RESTful HTTP/JSON API RESTful HTTP/SQL API SQL over MySQL | HTTP REST only for PouchDB Server JavaScript API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Actionscript C C# Haskell Java JavaScript Node.js Lisp Perl PHP Python Qt Rebol Ruby Scala Visual Basic | .Net C Go Java JavaScript Node.js Kotlin PHP Python Ruby Scala | Java JavaScript Objective-C | Elixir Go Java JavaScript (Node.js) Perl PHP Python | JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | Functions and timers in JavaScript and UDFs in Java, Python, SQL++ | limited functionality with using 'rules' | user defined functions | View functions in JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes via events | yes via the TAP protocol | Callbacks are triggered when data changes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | Automatic Sharding | Sharding Partitioning is done manually, search queries against distributed index is supported | Sharding with a proxy-based framework, named couchdb-lounge | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | Multi-source replication including cross data center replication Source-replica replication | Synchronous replication based on Galera library | Multi-source replication also with CouchDB databases Source-replica replication also with CouchDB databases | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Immediate Consistency selectable on a per-operation basis | Eventual Consistency if the client is offline Immediate Consistency if the client is online | Eventual Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | multiple readers, single writer | ACID | yes | yes isolated transactions for atomic changes and binary logging for safe writes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes The original contents of fields are not stored in the Manticore index. | yes by using IndexedDB, WebSQL or LevelDB as backend | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes Ephemeral buckets | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Users with fine-grained authorization concept on 4 levels | User and Administrator separation with password-based and LDAP integrated Authentication. Role-base access control. | yes, based on authentication and database rules | no | 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
BaseX | Couchbase Originally called Membase | Firebase Realtime Database | Manticore Search | PouchDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | New kids on the block: database management systems implemented in JavaScript XML Injection Attacks: What to Know About XPath, XQuery, XXE & More 9 Skills You Need to Become a Data Engineer provided by Google News A Closer Look at 9 Analyst Recommendations For Couchbase Database company Couchbase cruises to another solid earnings and revenue beat Couchbase Announces New Features to Accelerate AI-Powered Adaptive Applications for Customers Couchbase, Inc. (NASDAQ:BASE) Shares Slammed 29% But Getting In Cheap Might Be Difficult Regardless Couchbase (NASDAQ:BASE) Price Target Lowered to $30.00 at DA Davidson provided by Google 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 Integrating Manticore Search with Apache Superset Clickhouse vs Elasticsearch vs Manticore Search Query Times With a 1.7B NYC Taxi Rides Benchmark Manticore is a Faster Alternative to Elasticsearch in C++ 8 Google Alternatives: How to Search Crypto, the Dark Web, More Highlighting in Search Results 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 |
Share this page