DBMS > EJDB vs. HBase vs. Percona Server for MongoDB vs. PouchDB vs. Transbase
System Properties Comparison EJDB vs. HBase vs. Percona Server for MongoDB vs. PouchDB vs. Transbase
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | EJDB Xexclude from comparison | HBase Xexclude from comparison | Percona Server for MongoDB Xexclude from comparison | PouchDB Xexclude from comparison | Transbase Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Embeddable document-store database library with JSON representation of queries (in MongoDB style) | Wide-column store based on Apache Hadoop and on concepts of BigTable | A drop-in replacement for MongoDB Community Edition with enterprise-grade features. | JavaScript DBMS with an API inspired by CouchDB | A resource-optimized, high-performance, universally applicable RDBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Wide column store | Document store | Document store | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | github.com/Softmotions/ejdb | hbase.apache.org | www.percona.com/mongodb/software/percona-server-for-mongodb | pouchdb.com | www.transaction.de/en/products/transbase.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | github.com/Softmotions/ejdb/blob/master/README.md | hbase.apache.org/book.html | docs.percona.com/percona-distribution-for-mongodb | pouchdb.com/guides | www.transaction.de/en/products/transbase/features.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Softmotions | Apache Software Foundation Apache top-level project, originally developed by Powerset | Percona | Apache Software Foundation | Transaction Software GmbH | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2008 | 2015 | 2012 | 1987 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 2.3.4, January 2021 | 3.4.10-2.10, November 2017 | 7.1.1, June 2019 | Transbase 8.3, 2022 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source GPLv2 | Open Source Apache version 2 | Open Source GPL Version 2 | Open Source | commercial free development license | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Java | C++ | JavaScript | C and C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | server-less | Linux Unix Windows using Cygwin | Linux | server-less, requires a JavaScript environment (browser, Node.js) | FreeBSD Linux macOS Solaris Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free, schema definition possible | schema-free | schema-free | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes string, integer, double, bool, date, object_id | options to bring your own types, AVRO | yes | 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 | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | no | no | yes | yes via views | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | no | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | in-process shared library | Java API RESTful HTTP API Thrift | proprietary protocol using JSON | HTTP REST only for PouchDB Server JavaScript API | ADO.NET JDBC ODBC Proprietary native API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Actionscript C C# C++ Go Java JavaScript (Node.js) Lua Objective-C Pike Python Ruby | C C# C++ Groovy Java PHP Python Scala | Actionscript C C# C++ Clojure ColdFusion D Dart Delphi Erlang Go Groovy Haskell Java JavaScript Lisp Lua MatLab Perl PHP PowerShell Prolog Python R Ruby Scala Smalltalk | JavaScript | C C# C++ Java JavaScript Kotlin Objective-C PHP Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | yes Coprocessors in Java | JavaScript | View functions in JavaScript | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes | no | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | Sharding | Sharding | Sharding with a proxy-based framework, named couchdb-lounge | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | Multi-source replication Source-replica replication | Source-replica replication | Multi-source replication also with CouchDB databases Source-replica replication also with CouchDB databases | Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency or Eventual Consistency | Eventual Consistency Immediate Consistency | Eventual Consistency | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no typically not needed, however similar functionality with collection joins possible | no | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | Single row ACID (across millions of columns) | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes Read/Write Locking | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes by using IndexedDB, WebSQL or LevelDB as backend | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | yes via In-Memory Engine | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | Access Control Lists (ACL) for RBAC, integration with Apache Ranger for RBAC & ABAC | Access rights for users and roles | no | fine grained access rights 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
EJDB | HBase | Percona Server for MongoDB | PouchDB | Transbase | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cloudera's HBase PaaS offering now supports Complex Transactions Why is Hadoop not listed in the DB-Engines Ranking? | New kids on the block: database management systems implemented in JavaScript | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Less Components, Higher Performance: Apache Doris instead of ClickHouse, MySQL, Presto, and HBase What Is HBase? HBase: The database big data left behind Monitor Apache HBase on Amazon EMR using Amazon Managed Service for Prometheus and Amazon Managed ... HydraBase – The evolution of HBase@Facebook provided by Google News | MongoDB Performance Tuning Why Isn't the World Upgrading Its Databases? FerretDB goes GA: Gives you MongoDB, without the MongoDB... The essential guide to MongoDB security Open-source developers under corporate pressure to adopt less-permissive licenses, Percona CEO says 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