DBMS > etcd vs. eXtremeDB vs. ObjectBox vs. Postgres-XL vs. PouchDB
System Properties Comparison etcd vs. eXtremeDB vs. ObjectBox vs. Postgres-XL vs. PouchDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | etcd Xexclude from comparison | eXtremeDB Xexclude from comparison | ObjectBox Xexclude from comparison | Postgres-XL Xexclude from comparison | PouchDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A distributed reliable key-value store | Natively in-memory DBMS with options for persistency, high-availability and clustering | Extremely fast embedded database for small devices, IoT and Mobile | Based on PostgreSQL enhanced with MPP and write-scale-out cluster features | JavaScript DBMS with an API inspired by CouchDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Key-value store | Relational DBMS Time Series DBMS | Object oriented DBMS | Relational DBMS | Document store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Time Series DBMS | Document store Spatial DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | etcd.io github.com/etcd-io/etcd | www.mcobject.com | objectbox.io | www.postgres-xl.org | pouchdb.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | etcd.io/docs github.com/etcd-io/etcd/tree/master/Documentation | www.mcobject.com/docs/extremedb.htm | docs.objectbox.io | www.postgres-xl.org/documentation | pouchdb.com/guides | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | McObject | ObjectBox Limited | Apache Software Foundation | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2001 | 2017 | 2014 since 2012, originally named StormDB | 2012 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 3.4, August 2019 | 8.2, 2021 | 10 R1, October 2018 | 7.1.1, June 2019 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2.0 | commercial | Open Source Apache License 2.0 | Open Source Mozilla public license | Open Source | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Go | C and C++ | C and C++ | C | JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | FreeBSD Linux Windows experimental | AIX HP-UX Linux macOS Solaris Windows | Android iOS Linux macOS Windows | Linux macOS | server-less, requires a JavaScript environment (browser, Node.js) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes | yes | yes | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | no | yes | yes | yes | 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 | no support of XML interfaces available | no | yes XML type, but no XML query functionality | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | yes | yes | yes | yes via views | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | yes with the option: eXtremeSQL | no | yes distributed, parallel query execution | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | gRPC JSON over HTTP | .NET Client API JDBC JNI ODBC Proprietary protocol RESTful HTTP API | Proprietary native API | ADO.NET JDBC native C library ODBC streaming API for large objects | HTTP REST only for PouchDB Server JavaScript API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net C C++ Clojure Erlang Go Haskell Java JavaScript (Node.js) Perl PHP Python R Ruby Rust Scala Tcl | .Net C C# C++ Java Lua Python Scala | C C++ Dart Go Java JavaScript planned (as of Jan 2019) Kotlin Python planned (as of Jan 2019) Swift | .Net C C++ Delphi Erlang Java JavaScript (Node.js) Perl PHP Python Tcl | JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | yes | no | user defined functions | View functions in JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes, watching key changes | yes by defining events | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | horizontal partitioning / sharding | none | horizontal partitioning | Sharding with a proxy-based framework, named couchdb-lounge | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Using Raft consensus algorithm to ensure data replication with strong consistency among multiple replicas. | Active Replication Fabric™ for IoT Multi-source replication by means of eXtremeDB Cluster option Source-replica replication by means of eXtremeDB High Availability option | online/offline synchronization between client and server | 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 | no | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | Immediate Consistency | Immediate Consistency | Eventual Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID | ACID | ACID MVCC | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes Optimistic (MVCC) and pessimistic (locking) strategies available | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | 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. | no | yes | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | yes | fine grained access rights according to SQL-standard | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
etcd | eXtremeDB | ObjectBox | Postgres-XL | PouchDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | eXtremeDB is an in-memory and/or persistent database system that offers an ultra-small... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | eXtremeDB databases can be modeled relationally or as objects and can utilize SQL... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | IoT application across all markets: Industrial Control, Netcom, Telecom, Defense,... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Schneider Electronics, F5 Networks, TNS, Boeing, Northrop Grumman, GoPro, ViaSat,... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | With hundreds of customers and over 30 million devices/applications using the product... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | For server use cases, there is a simple per-server license irrespective of the number... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | On-device Vector Database for Dart/Flutter The first On-Device Vector Database: ObjectBox 4.0 Edge AI: The era of on-device AI In-Memory Database Use Cases Data Viewer for Objects – announcing ObjectBox Admin | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
etcd | eXtremeDB | ObjectBox | Postgres-XL | PouchDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | New kids on the block: database management systems implemented in JavaScript Monitor Amazon EKS Control Plane metrics using AWS Open Source monitoring services | Amazon Web Services RBI reiterates need for underlying forex exposure for rupee derivatives transactions | Mint 6 Cool Kubernetes Operators and How to Use Them Killing a market, softly: How an RBI communique could end India's thriving ETCD market Public preview: AKS cluster control plane metrics in managed Prometheus | Azure updates provided by Google News eXtremeDB 8.4 Unveils Exciting New Features and Enhancements Latest embedded DBMS supports asymmetric multiprocessing systems McObject Announces the Release of eXtremeDB/rt 1.2 The Data in Hard Real-time SCADA Systems Lets Companies Do More with Less McObject Delivers eXtremeDB 8.4 Improving Performance, Security, and Developer Productivity provided by Google News The Megashift Towards Decentralized Edge Computing 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