DBMS > CouchDB vs. Elasticsearch vs. MariaDB vs. Neo4j vs. RDF4J
System Properties Comparison CouchDB vs. Elasticsearch vs. MariaDB vs. Neo4j vs. RDF4J
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | CouchDB stands for "Cluster Of Unreliable Commodity Hardware" Xexclude from comparison | Elasticsearch Xexclude from comparison | MariaDB Xexclude from comparison | Neo4j Xexclude from comparison | RDF4J formerly known as Sesame Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A native JSON - document store inspired by Lotus Notes, scalable from globally distributed server-clusters down to mobile phones. | A distributed, RESTful modern search and analytics engine based on Apache Lucene Elasticsearch lets you perform and combine many types of searches such as structured, unstructured, geo, and metric | MySQL application compatible open source RDBMS, enhanced with high availability, security, interoperability and performance capabilities. MariaDB ColumnStore provides a column-oriented storage engine and MariaDB Xpand supports distributed SQL. | Scalable, ACID-compliant graph database designed with a high-performance distributed cluster architecture, available in self-hosted and cloud offerings | RDF4J is a Java framework for processing RDF data, supporting both memory-based and a disk-based storage. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store | Search engine | Relational DBMS | Graph DBMS | RDF store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS using the Geocouch extension | Document store Spatial DBMS Vector DBMS | Document store Graph DBMS with OQGraph storage engine Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | couchdb.apache.org | www.elastic.co/elasticsearch | mariadb.com Site of MariaDB Corporation mariadb.org Site of MariaDB Foundation | neo4j.com | rdf4j.org | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.couchdb.org/en/stable | www.elastic.co/guide/en/elasticsearch/reference/current/index.html | mariadb.com/kb/en/library | neo4j.com/docs | rdf4j.org/documentation | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation Apache top-level project, originally developed by Damien Katz, a former Lotus Notes developer | Elastic | MariaDB Corporation Ab (MariaDB Enterprise), MariaDB Foundation (community MariaDB Server) The lead developer Monty Widenius is the original author of MySQL | Neo4j, Inc. | Since 2016 officially forked into an Eclipse project, former developer was Aduna Software. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2005 | 2010 | 2009 Fork of MySQL, which was first released in 1995 | 2007 | 2004 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 3.3.3, December 2023 | 8.6, January 2023 | 11.5.2, August 2024 | 5.23, August 2024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache version 2 | Open Source Elastic License | Open Source GPL version 2, commercial enterprise subscription available | Open Source GPL version3, commercial licenses available | Open Source Eclipse Distribution License (EDL), v1.0. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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. | STACKIT MariaDB offers MariaDB in a fully managed version in enterprise grade, 100% GDPR-compliant. | Neo4j Aura: Neo4j’s fully managed cloud service: The zero-admin, always-on graph database for cloud developers. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Erlang | Java | C and C++ | Java, Scala | Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Android BSD Linux OS X Solaris Windows | All OS with a Java VM | FreeBSD Linux Solaris Windows ColumnStore storage engine not available on Windows | Linux Can also be used server-less as embedded Java database. OS X Solaris Windows | Linux OS X Unix Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free Flexible type definitions. Once a type is defined, it is persistent | yes Dynamic columns are supported | schema-free and schema-optional | yes RDF Schemas | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | no | yes | 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 | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes via views | yes All search fields are automatically indexed | yes | yes pluggable indexing subsystem, by default Apache Lucene | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | SQL-like query language | yes with proprietary extensions | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | RESTful HTTP/JSON API | Java API RESTful HTTP/JSON API | ADO.NET JDBC ODBC Proprietary native API | Bolt protocol Cypher query language Java API Neo4j-OGM Object Graph Mapper RESTful HTTP API Spring Data Neo4j TinkerPop 3 | Java API RIO RDF Input/Output Sail API SeRQL Sesame RDF Query Language Sesame REST HTTP Protocol SPARQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# ColdFusion Erlang Haskell Java JavaScript Lisp Lua Objective-C OCaml Perl PHP PL/SQL Python Ruby Smalltalk | .Net Groovy Community Contributed Clients Java JavaScript Perl PHP Python Ruby | Ada C C# C++ D Eiffel Erlang Go Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | .Net Clojure Elixir Go Groovy Haskell Java JavaScript Perl PHP Python Ruby Scala | Java PHP Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | View functions in JavaScript | yes | yes PL/SQL compatibility added with version 10.3 | yes User defined Procedures and Functions | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | yes by using the 'percolation' feature | yes | yes via event handler | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding improved architecture with release 2.0 | Sharding | several options for horizontal partitioning and Sharding | yes using Neo4j Fabric | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication Source-replica replication | yes | Multi-source replication Source-replica replication | Causal Clustering using Raft protocol available in in Enterprise Version only | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | ES-Hadoop Connector | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency | Eventual Consistency Synchronous doc based replication. Get by ID may show delays up to 1 sec. Configurable write consistency: one, quorum, all | Immediate Consistency | Causal and Eventual Consistency configurable in Causal Cluster setup Immediate Consistency in stand-alone mode | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | yes not for MyISAM storage engine | yes Relationships in graphs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no atomic operations within a single document possible | no | ACID not for MyISAM storage engine | ACID | ACID Isolation support depends on the API used | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes strategy: optimistic locking | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes not for in-memory storage engine | yes | yes in-memory storage is supported as well | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | Memcached and Redis integration | yes with MEMORY storage engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users can be defined per database | fine grained access rights according to SQL-standard | Users, roles and permissions. Pluggable authentication with supported standards (LDAP, Active Directory, Kerberos) | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CouchDB stands for "Cluster Of Unreliable Commodity Hardware" | Elasticsearch | MariaDB | Neo4j | RDF4J formerly known as Sesame | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | MariaDB is the most powerful open source relational database – modern SQL and JSON... » more | Neo4j delivers graph technology that has been battle tested for performance and scale... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | MariaDB Servers have many features unavailable in other open source relational databases.... » more | Neo4j is the market leader, graph database category creator, and the most widely... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Web, SaaS and Cloud operational applications that require high availability, scalability... » more | Real-Time Recommendations Master Data Management Identity and Access Management Network... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Deutsche Bank, DBS Bank, Nasdaq, Red Hat, ServiceNow, Verizon and Walgreens Featured... » more | Over 800 commercial customers and over 4300 startups use Neo4j. Flagship customers... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | MariaDB is the default database in the LAMP stack supplied by Red Hat and SUSE Linux,... » more | Neo4j boasts the world's largest graph database ecosystem with more than 140 million... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | MariaDB plc subscriptions cover our free, open source database, Community Server,... » more | GPL v3 license that can be used all the places where you might use MySQL. Neo4j Commercial... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | Elevate Fraud Detection With Neo4j on AWS: Uncover Hidden Patterns and Enhance Accuracy The Ethics of Generative AI: Understanding the Principles and Risks GraphSummit Europe 2024: Actionable Insights From Industry Leaders and Innovators This Week in Neo4j: Knowledge Graph, Data Loading, Olympics, CSV and more Neo4j Expands Cloud Database Capabilities to Power Enterprise-Scale Graph Deployments | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | Navicat for MariaDB provides a native environment for MariaDB database management and development. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We 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" | Elasticsearch | MariaDB | Neo4j | RDF4J formerly known as Sesame | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Couchbase climbs up the DB-Engines Ranking, increasing its popularity by 10% every month | PostgreSQL is the DBMS of the Year 2017 Elasticsearch moved into the top 10 most popular database management systems MySQL, PostgreSQL and Redis are the winners of the March ranking | MariaDB strengthens its position in the open source RDBMS market PostgreSQL is the DBMS of the Year 2017 Big gains for Relational Database Management Systems in DB-Engines Ranking | Applying Graph Analytics to Game of Thrones MySQL, PostgreSQL and Redis are the winners of the March ranking The openCypher Project: Help Shape the SQL for Graphs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | How to install the CouchDB NoSQL database on Debian Server 11 IBM Cloudant pulls plan to fund new foundational layer for CouchDB CouchDB 3.0 ends admin party era Hadoop, CouchDB Next Targets in Wave of Database Attacks How to Connect Your Flask App With CouchDB: A NoSQL Database - MUO provided by Google News | Elasticsearch will be open source again as CTO declares changed landscape Unsecured Elasticsearch cluster exposes over 3M vehicle records The Elasticsearch cloud now subject to open-source licence Elasticsearch Open Inference API Extends Support for Hugging Face Models with Semantic Text Elastic Announces Open Source License for Elasticsearch and Kibana Source Code provided by Google News | K1 Acquires MariaDB, a Leading Database Software Company, and Appoints New CEO MariaDB goes private after acquisition by K1 Investment Management MariaDB goes private with new CEO as K1 closes acquisition Proposal Seeks To Replace MySQL With MariaDB By Default For Ubuntu 25.04 ServiceNow moves its backend off MariaDB to homebrew Postgres provided by Google News | Neo4j lowers barriers to graph technology with gen AI copilot, 15x read capacity Neo4j Transforms Its Cloud Database Portfolio to Accelerate Graph Adoption & GenAI for the Enterprise Implementing GraphReader with Neo4j and LangGraph | by Tomaz Bratanic | Sep, 2024 Neo4j eyes GenAI workloads in APAC Neo4j charts upward course for GraphRAG in graph databases provided by Google News |
Share this page