DB-EnginesExtremeDB: mitigate connectivity issues in a DBMSEnglish
Deutsch
Knowledge Base of Relational and NoSQL Database Management Systemsprovided by solid IT

DBMS > CouchDB vs. EJDB vs. H2 vs. HyperSQL vs. LokiJS

System Properties Comparison CouchDB vs. EJDB vs. H2 vs. HyperSQL vs. LokiJS

Editorial information provided by DB-Engines
NameCouchDB infostands for "Cluster Of Unreliable Commodity Hardware"  Xexclude from comparisonEJDB  Xexclude from comparisonH2  Xexclude from comparisonHyperSQL infoalso known as HSQLDB  Xexclude from comparisonLokiJS  Xexclude from comparison
DescriptionA native JSON - document store inspired by Lotus Notes, scalable from globally distributed server-clusters down to mobile phones.Embeddable document-store database library with JSON representation of queries (in MongoDB style)Full-featured RDBMS with a small footprint, either embedded into a Java application or used as a database server.Multithreaded, transactional RDBMS written in Java infoalso known as HSQLDBIn-memory JavaScript DBMS
Primary database modelDocument storeDocument storeRelational DBMSRelational DBMSDocument store
Secondary database modelsSpatial DBMS infousing the Geocouch extensionSpatial DBMS
DB-Engines Ranking infomeasures the popularity of database management systemsranking trend
Trend Chart
Score8.30
Rank#47  Overall
#7  Document stores
Score0.31
Rank#296  Overall
#44  Document stores
Score8.33
Rank#46  Overall
#30  Relational DBMS
Score3.23
Rank#93  Overall
#48  Relational DBMS
Score0.49
Rank#260  Overall
#42  Document stores
Websitecouchdb.apache.orggithub.com/­Softmotions/­ejdbwww.h2database.comhsqldb.orggithub.com/­techfort/­LokiJS
Technical documentationdocs.couchdb.org/­en/­stablegithub.com/­Softmotions/­ejdb/­blob/­master/­README.mdwww.h2database.com/­html/­main.htmlhsqldb.org/­web/­hsqlDocsFrame.htmltechfort.github.io/­LokiJS
DeveloperApache Software Foundation infoApache top-level project, originally developed by Damien Katz, a former Lotus Notes developerSoftmotionsThomas Mueller
Initial release20052012200520012014
Current release3.3.3, December 20232.2.220, July 20232.7.2, June 2023
License infoCommercial or Open SourceOpen Source infoApache version 2Open Source infoGPLv2Open Source infodual-licence (Mozilla public license, Eclipse public license)Open Source infobased on BSD licenseOpen Source
Cloud-based only infoOnly available as a cloud servicenonononono
DBaaS offerings (sponsored links) infoDatabase as a Service

Providers of DBaaS offerings, please contact us to be listed.
Implementation languageErlangCJavaJavaJavaScript
Server operating systemsAndroid
BSD
Linux
OS X
Solaris
Windows
server-lessAll OS with a Java VMAll OS with a Java VM infoEmbedded (into Java applications) and Client-Server operating modesserver-less, requires a JavaScript environment (browser, Node.js)
Data schemeschema-freeschema-freeyesyesschema-free
Typing infopredefined data types such as float or datenoyes infostring, integer, double, bool, date, object_idyesyesno
XML support infoSome form of processing data in XML format, e.g. support for XML data structures, and/or support for XPath, XQuery or XSLT.nononono
Secondary indexesyes infovia viewsnoyesyesyes infovia views
SQL infoSupport of SQLnonoyesyesno
APIs and other access methodsRESTful HTTP/JSON APIin-process shared libraryJDBC
ODBC
HTTP API infoJDBC via HTTP
JDBC
ODBC
JavaScript API
Supported programming languagesC
C#
ColdFusion
Erlang
Haskell
Java
JavaScript
Lisp
Lua
Objective-C
OCaml
Perl
PHP
PL/SQL
Python
Ruby
Smalltalk
Actionscript
C
C#
C++
Go
Java
JavaScript (Node.js)
Lua
Objective-C
Pike
Python
Ruby
JavaAll languages supporting JDBC/ODBC
Java
JavaScript
Server-side scripts infoStored proceduresView functions in JavaScriptnoJava Stored Procedures and User-Defined FunctionsJava, SQLView functions in JavaScript
Triggersyesnoyesyesyes
Partitioning methods infoMethods for storing different data on different nodesSharding infoimproved architecture with release 2.0nonenonenonenone
Replication methods infoMethods for redundantly storing data on multiple nodesMulti-source replication
Source-replica replication
noneWith clustering: 2 database servers on different computers operate on identical copies of a databasenonenone
MapReduce infoOffers an API for user-defined Map/Reduce methodsyesnononoyes
Consistency concepts infoMethods to ensure consistency in a distributed systemEventual ConsistencyImmediate ConsistencyImmediate Consistencynone
Foreign keys infoReferential integritynono infotypically not needed, however similar functionality with collection joins possibleyesyesno
Transaction concepts infoSupport to ensure data integrity after non-atomic manipulations of datano infoatomic operations within a single document possiblenoACIDACIDno infoatomic operations within a single collection possible
Concurrency infoSupport for concurrent manipulation of datayes infostrategy: optimistic lockingyes infoRead/Write Lockingyes, multi-version concurrency control (MVCC)yes
Durability infoSupport for making data persistentyesyesyesyesyes infoSerialization of a DB in a Node.JS/Cordova/PhoneGap environment. Usage of the IndexedDB-API in a browser.
In-memory capabilities infoIs there an option to define some or all structures to be held in-memory only.noyesyesyes
User concepts infoAccess controlAccess rights for users can be defined per databasenofine grained access rights according to SQL-standardfine grained access rights according to SQL-standardno

More information provided by the system vendor

We invite representatives of system vendors to contact us for updating and extending the system information,
and for displaying vendor-provided information such as key customers, competitive advantages and market metrics.

Related products and services

We invite representatives of vendors of related products to contact us for presenting information about their offerings here.

More resources
CouchDB infostands for "Cluster Of Unreliable Commodity Hardware"EJDBH2HyperSQL infoalso known as HSQLDBLokiJS
DB-Engines blog posts

Couchbase climbs up the DB-Engines Ranking, increasing its popularity by 10% every month
2 June 2014, Matthias Gelbmann

show all

New kids on the block: database management systems implemented in JavaScript
1 December 2014, Matthias Gelbmann

show all

Recent citations in the news

How to install the CouchDB NoSQL database on Debian Server 11
16 June 2022, TechRepublic

IBM Cloudant pulls plan to fund new foundational layer for CouchDB
15 March 2022, The Register

CouchDB 3.0 ends admin party era • DEVCLASS
27 February 2020, DevClass

Tracking Expenses with CouchDB and Angular — SitePoint
28 August 2014, SitePoint

How to Connect Your Flask App With CouchDB: A NoSQL Database - MUO
14 August 2021, MakeUseOf

provided by Google News

HyperSQL DataBase flaw leaves library vulnerable to RCE
24 October 2022, The Daily Swig

Introduction to JDBC with HSQLDB tutorial
14 November 2022, TheServerSide.com

provided by Google News

LokiJS - A JavaScript Database
18 November 2014, iProgrammer

provided by Google News



Share this page

Featured Products

Neo4j logo

See for yourself how a graph database can make your life easier.
Use Neo4j online for free.

Milvus logo

Vector database designed for GenAI, fully equipped for enterprise implementation.
Try Managed Milvus for Free

Datastax Astra logo

Bring all your data to Generative AI applications with vector search enabled by the most scalable
vector database available.
Try for Free

Present your product here