DBMS > CouchDB vs. eXtremeDB vs. GeoSpock vs. NebulaGraph vs. OpenQM
System Properties Comparison CouchDB vs. eXtremeDB vs. GeoSpock vs. NebulaGraph vs. OpenQM
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | CouchDB stands for "Cluster Of Unreliable Commodity Hardware" Xexclude from comparison | eXtremeDB Xexclude from comparison | GeoSpock Xexclude from comparison | NebulaGraph Xexclude from comparison | OpenQM also called QM Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GeoSpock seems to be discontinued. Therefore it will be excluded from the DB-Engines ranking. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A native JSON - document store inspired by Lotus Notes, scalable from globally distributed server-clusters down to mobile phones. | Natively in-memory DBMS with options for persistency, high-availability and clustering | Spatial and temporal data processing engine for extreme data scale | A distributed, linear scalable, high perfomant Graph DBMS | QpenQM is a high-performance, self-tuning, multi-value DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Relational DBMS Time Series DBMS | Relational DBMS | Graph DBMS | Multivalue DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS using the Geocouch extension | Time Series DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | couchdb.apache.org | www.mcobject.com | geospock.com | github.com/vesoft-inc/nebula www.nebula-graph.io | www.rocketsoftware.com/products/rocket-multivalue-application-development-platform/rocket-open-qm | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.couchdb.org/en/stable | www.mcobject.com/docs/extremedb.htm | docs.nebula-graph.io | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation Apache top-level project, originally developed by Damien Katz, a former Lotus Notes developer | McObject | GeoSpock | Vesoft Inc. | Rocket Software, originally Martin Phillips | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2005 | 2001 | 2019 | 1993 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 3.3.3, December 2023 | 8.2, 2021 | 2.0, September 2019 | 3.4-12 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache version 2 | commercial | commercial | Open Source Apache Version 2.0 + Common Clause 1.0 | Open Source GPLv2, extended commercial license available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Erlang | C and C++ | Java, Javascript | C++ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Android BSD Linux OS X Solaris Windows | AIX HP-UX Linux macOS Solaris Windows | hosted | Linux | AIX FreeBSD Linux macOS Raspberry Pi Solaris Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes | yes | Strong typed schema | yes with some exceptions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | no | yes | yes | 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 support of XML interfaces available | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes via views | yes | temporal, categorical | yes Nebula Graph internally uses the Key-Value store RocksDB for persistency. The vertices, edges, and their properties are stored as Key while their values are stored as Value. The primary indexes are per Key and secondary indexes are per Value. | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | yes with the option: eXtremeSQL | ANSI SQL for query only (using Presto) | SQL-like query language | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | RESTful HTTP/JSON API | .NET Client API JDBC JNI ODBC Proprietary protocol RESTful HTTP API | JDBC | Browser interface console (shell) Cypher Query Language GO Object Graph Mapper Java Object Graph Mapper NGBatis ORM framework for NebulaGraph and Spring-Boot Proprietary native API Python Object Graph Mapper Query language nGQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# ColdFusion Erlang Haskell Java JavaScript Lisp Lua Objective-C OCaml Perl PHP PL/SQL Python Ruby Smalltalk | .Net C C# C++ Java Lua Python Scala | .Net C++ Go Java PHP Python | .Net Basic C Java Objective C PHP Python | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | View functions in JavaScript | yes | no | user defined functions | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | yes by defining events | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding improved architecture with release 2.0 | horizontal partitioning / sharding | Automatic sharding | Sharding | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication Source-replica replication | Active Replication Fabric™ for IoT Multi-source replication by means of eXtremeDB Cluster option Source-replica replication by means of eXtremeDB High Availability option | Causal Clustering using Raft protocol | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency | Immediate Consistency | Immediate Consistency | Immediate Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes | no | yes Relationships in graphs | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no atomic operations within a single document possible | ACID | no | ACID | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes strategy: optimistic locking | yes Optimistic (MVCC) and pessimistic (locking) strategies available | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes using RocksDB | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users can be defined per database | Access rights for users can be defined per table | Role-based access control | Access rights can be defined down to the item level | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CouchDB stands for "Cluster Of Unreliable Commodity Hardware" | eXtremeDB | GeoSpock | NebulaGraph | OpenQM also called QM | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | eXtremeDB is an in-memory and/or persistent database system that offers an ultra-small... » more | NebulaGraph is a truly distributed, linearly scalable, lightning-fast graph database,... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | eXtremeDB databases can be modeled relationally or as objects and can utilize SQL... » more | NebulaGraph boasts the world's only graph database solution that is able to host... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | IoT application across all markets: Industrial Control, Netcom, Telecom, Defense,... » more | Social networking Fraud detection Knowledge graph Data warehouse management Anti... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Schneider Electronics, F5 Networks, TNS, Boeing, Northrop Grumman, GoPro, ViaSat,... » more | Companies from a variety of industries have implemented NebulaGraph Database in production,... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | With hundreds of customers and over 30 million devices/applications using the product... » more | At our very early stage, NebulaGraph has already received over 10,000 stars on GitHub... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | For server use cases, there is a simple per-server license irrespective of the number... » more | NebulaGraph is open source and free to use under Apache 2.0 license. » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CouchDB stands for "Cluster Of Unreliable Commodity Hardware" | eXtremeDB | GeoSpock | NebulaGraph | OpenQM also called QM | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Couchbase climbs up the DB-Engines Ranking, increasing its popularity by 10% every month | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | How to Automate A Blog Post App Deployment With GitHub Actions, Node.js, CouchDB, and Aptible HNS IoT Botnet Evolves, Goes Cross-Platform IBM Cloudant pulls plan to fund new foundational layer for CouchDB How to install the CouchDB NoSQL database on Debian Server 11 CouchDB 3.0 ends admin party era • DEVCLASS 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 | How GeoSpock is supercharging geospatial analytics GeoSpock launches Spatial Big Data Platform 2.0 nChain Leads Investment Round in Extreme-scale Data Firm GeoSpock Smart Cities, Autonomous Vehicles, Artificial General Intelligence Robotics: Q&A with Steve Marsh, GeoSpock GeoSpock’s extreme-scale data mission in $5.4m funding boost provided by Google News | Vesoft (NebulaGraph) Recognized in the Gartner® Market Guide for Graph Database Management Systems NebulaGraph reaps from China's growing appetite for graph databases NebulaGraph Completes Series A to Scale Its Distributed Graph Database NebulaGraph Enterprise v5.0: The First Distributed Graph Database to Offer Native GQL Support provided by Google News |
Share this page