DBMS > BaseX vs. ClickHouse vs. Elasticsearch vs. Memgraph vs. Vitess
System Properties Comparison BaseX vs. ClickHouse vs. Elasticsearch vs. Memgraph vs. Vitess
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | BaseX Xexclude from comparison | ClickHouse Xexclude from comparison | Elasticsearch Xexclude from comparison | Memgraph Xexclude from comparison | Vitess Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Light-weight Native XML DBMS with support for XQuery 3.0 and interactive GUI. | A high-performance, column-oriented SQL DBMS for online analytical processing (OLAP) that uses all available system resources to their full potential to process each analytical query as fast as possible. It is available as both an open-source software and a cloud offering. | 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 | An open source graph database built for real-time streaming and compatible with Neo4j | Scalable, distributed, cloud-native DBMS, extending MySQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Native XML DBMS | Relational DBMS | Search engine | Graph DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Time Series DBMS | Document store Spatial DBMS Vector DBMS | Document store Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | basex.org | clickhouse.com | www.elastic.co/elasticsearch | memgraph.com | vitess.io | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.basex.org | clickhouse.com/docs | www.elastic.co/guide/en/elasticsearch/reference/current/index.html | memgraph.com/docs | vitess.io/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Social network pages | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | BaseX GmbH | Clickhouse Inc. | Elastic | Memgraph Ltd | The Linux Foundation, PlanetScale | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2007 | 2016 | 2010 | 2017 | 2013 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 10.7, August 2023 | v24.4.1.2088-stable, May 2024 | 8.6, January 2023 | 15.0.2, December 2022 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source BSD license | Open Source Apache 2.0 | Open Source Elastic License | Open Source BSL 1.1; commercial license for enterprise edition available | Open Source Apache Version 2.0, commercial licenses available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Java | C++ | Java | C and C++ | Go | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Windows | FreeBSD Linux macOS | All OS with a Java VM | Linux | Docker Linux macOS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | yes | schema-free Flexible type definitions. Once a type is defined, it is persistent | schema-free and schema-optional | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | no XQuery supports types | 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 | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes All search fields are automatically indexed | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | Close to ANSI SQL (SQL/JSON + extensions) | SQL-like query language | no | yes with proprietary extensions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Java API RESTful HTTP API RESTXQ WebDAV XML:DB XQJ | gRPC HTTP REST JDBC MySQL wire protocol ODBC PostgreSQL wire protocol Proprietary protocol | Java API RESTful HTTP/JSON API | Bolt protocol Cypher query language | ADO.NET JDBC MySQL protocol ODBC | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Actionscript C C# Haskell Java JavaScript Node.js Lisp Perl PHP Python Qt Rebol Ruby Scala Visual Basic | C# 3rd party library C++ Elixir 3rd party library Go 3rd party library Java 3rd party library JavaScript (Node.js) 3rd party library Kotlin 3rd party library Nim 3rd party library Perl 3rd party library PHP 3rd party library Python 3rd party library R 3rd party library Ruby 3rd party library Rust Scala 3rd party library | .Net Groovy Community Contributed Clients Java JavaScript Perl PHP Python Ruby | .Net C C++ Elixir Go Haskell Java JavaScript PHP Python Ruby Scala | Ada C C# C++ D Delphi Eiffel Erlang Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | yes | yes | yes proprietary syntax | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes via events | no | yes by using the 'percolation' feature | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | key based and custom | Sharding | Sharding dynamic graph partitioning | Sharding | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | Asynchronous and synchronous physical replication; geographically distributed replicas; support for object storages. | yes | Multi-source replication using RAFT | Multi-source replication Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | ES-Hadoop Connector | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate 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 | Eventual Consistency across shards Immediate Consistency within a shard | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | yes relationships in graphs | yes not for MyISAM storage engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | multiple readers, single writer | no | no | ACID with snapshot isolation | ACID at shard level | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes, multi-version concurrency control (MVCC) | yes table locks or row locks depending on storage engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes with periodic snapshot and write-ahead logging (WAL) of changes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | Memcached and Redis integration | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Users with fine-grained authorization concept on 4 levels | Access rights for users and roles. Column and row based policies. Quotas and resource limits. Pluggable authentication with LDAP and Kerberos. Password based, X.509 certificate, and SSH key authentication. | Users, roles and permissions | Users with fine-grained authorization concept no user groups or roles | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
BaseX | ClickHouse | Elasticsearch | Memgraph | Vitess | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Memgraph directly connects to your streaming infrastructure so you and your team... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | Business Source License ensures a future for the Memgraph community MAGE algorithm... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Graph algorithms in bioinformatics Social network analysis Cryptocurrency network... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | You can check out our pricing model and licenses on the company website . » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | Aiven for Clickhouse: Managed cloud data warehousing with high-speed analytics. » more DoubleCloud: Fully managed ClickHouse alongside best-in-class managed open-source services to build analytics at scale. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
BaseX | ClickHouse | Elasticsearch | Memgraph | Vitess | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | 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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | XML Injection Attacks: What to Know About XPath, XQuery, XXE & More 9 Skills You Need to Become a Data Engineer provided by Google News | Why Clickhouse Should Be Your Next Database ClickHouse Cloud & Amazon S3 Express One Zone: Making a blazing fast analytical database even faster | Amazon ... Ubuntu 24.04 + Linux 6.9 Intel & AMD Server Performance ClickHouse Announces Launch of ClickPipes From Open Source to SaaS: the Journey of ClickHouse provided by Google News | Splunk vs Elasticsearch | A Comparison and How to Choose Elasticsearch Delivers Performance Increase for Users Running the Elastic Search AI Platform on Arm-based ... Introducing Elasticsearch Vector Database to Azure OpenAI Service On Your Data (Preview) Netflix Uses Elasticsearch Percolate Queries to Implement Reverse Searches Efficiently ElasticSearch Goes Deep on OpenTelemetry with eBPF Donation provided by Google News | Enhance Your Network with the Power of a Graph DB Graph database company Memgraph raises $9.34M Croatian graph database startup Memgraph raises €8M with Microsoft as key investor, plans to boost R&D Graph Database Market to grow at a CAGR of 19.9% from 2022 to 2027|Increased demand for low-latency queries is a ... Making Your Own Memory Graph To Detect Memory Issues On iOS provided by Google News | PlanetScale Unveils Distributed MySQL Database Service Based on Vitess Massively Scaling MySQL Using Vitess PlanetScale offers undo button to reverse schema migration without losing data They scaled YouTube -- now they’ll shard everyone with PlanetScale PlanetScale Serves up Vitess-Powered Serverless MySQL provided by Google News |
Share this page