DBMS > Elasticsearch vs. Hazelcast vs. MySQL vs. PouchDB vs. SpaceTime
System Properties Comparison Elasticsearch vs. Hazelcast vs. MySQL vs. PouchDB vs. SpaceTime
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Elasticsearch Xexclude from comparison | Hazelcast Xexclude from comparison | MySQL Xexclude from comparison | PouchDB Xexclude from comparison | SpaceTime Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | 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 | A widely adopted in-memory data grid | Widely used open source RDBMS | JavaScript DBMS with an API inspired by CouchDB | SpaceTime is a spatio-temporal DBMS with a focus on performance. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Search engine Vector DBMS | Key-value store | Relational DBMS Key/Value like access via memcached API | Document store | Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Spatial DBMS | Document store JSON support with IMDG 3.12 | Document store Spatial DBMS | Relational DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.elastic.co/elasticsearch | hazelcast.com | www.mysql.com | pouchdb.com | www.mireo.com/spacetime | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.elastic.co/guide/en/elasticsearch/reference/current/index.html | hazelcast.org/imdg/docs | dev.mysql.com/doc | pouchdb.com/guides | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Elastic | Hazelcast | Oracle since 2010, originally MySQL AB, then Sun | Apache Software Foundation | Mireo | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2010 | 2008 | 1995 | 2012 | 2020 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 8.6, January 2023 | 5.3.6, November 2023 | 9.0.0, July 2024 | 7.1.1, June 2019 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Elastic License | Open Source Apache Version 2; commercial licenses available | Open Source GPL version 2. Commercial licenses with extended functionallity are available | Open Source | commercial | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Java | C and C++ | JavaScript | C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM | All OS with a Java VM | FreeBSD Linux OS X Solaris Windows | server-less, requires a JavaScript environment (browser, Node.js) | Linux | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free Flexible type definitions. Once a type is defined, it is persistent | schema-free | yes | schema-free | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | 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 | yes the object must implement a serialization strategy | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes All search fields are automatically indexed | yes | yes | yes via views | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like query language | SQL-like query language | yes with proprietary extensions | no | A subset of ANSI SQL is implemented | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Java API RESTful HTTP/JSON API | JCache JPA Memcached protocol RESTful HTTP API | ADO.NET JDBC ODBC Proprietary native API | HTTP REST only for PouchDB Server JavaScript API | RESTful HTTP API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net Groovy Community Contributed Clients Java JavaScript Perl PHP Python Ruby | .Net C# C++ Clojure Go Java JavaScript (Node.js) Python Scala | Ada C C# C++ D Delphi Eiffel Erlang Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | JavaScript | C# C++ Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | yes Event Listeners, Executor Services | yes proprietary syntax | View functions in JavaScript | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes by using the 'percolation' feature | yes Events | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | horizontal partitioning, sharding with MySQL Cluster or MySQL Fabric | Sharding with a proxy-based framework, named couchdb-lounge | Fixed-grid hypercubes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes | yes Replicated Map | Multi-source replication Source-replica replication | Multi-source replication also with CouchDB databases Source-replica replication also with CouchDB databases | Real-time block device replication (DRBD) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | ES-Hadoop Connector | yes | no | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Synchronous doc based replication. Get by ID may show delays up to 1 sec. Configurable write consistency: one, quorum, all | Immediate Consistency or Eventual Consistency selectable by user Raft Consensus Algorithm | Immediate Consistency | Eventual Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | yes not for MyISAM storage engine | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | one or two-phase-commit; repeatable reads; read commited | ACID not for MyISAM storage engine | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes table locks or row locks depending on storage engine | 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. | Memcached and Redis integration | yes | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Role-based access control | Users with fine-grained authorization concept no user groups or roles | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | CData: Connect to Big Data & NoSQL through standard Drivers. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Elasticsearch | Hazelcast | MySQL | PouchDB | SpaceTime | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | MySQL is the DBMS of the Year 2019 MariaDB strengthens its position in the open source RDBMS market The struggle for the hegemony in Oracle's database empire | New kids on the block: database management systems implemented in JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Amazon OpenSearch Service announces Standard and Extended Support dates for Elasticsearch and OpenSearch versions Elastic Simplifies Elasticsearch Management with AutoOps Integration Elastic Simplifies Elasticsearch Management with AutoOps Integration Elasticsearch will be open source again as CTO declares changed landscape Elastic returns to open source, but can it regain the community’s trust? Some industry players aren’t holding their breath provided by Google News | Hazelcast embraces vector search Hazelcast Showcases Real-Time Data Platform at 2024 Gartner Summit Hazelcast named a Strong Performer in The Forrester Wave™: Streaming Data Platforms, 2023 In-Memory Data Grid Market Is Booming Worldwide: VMware, Red Hat, Hazelcast AArete partners with data firm Hazelcast provided by Google News | Upgrading Uber’s MySQL Fleet to version 8.0 Uber Completes Major MySQL Fleet Upgrade, Boosting Performance and Security How Dafiti migrated its most critical database to Amazon Aurora MySQL with minimal downtime and improved operational efficiency How to get started with MySQL HeatWave MySQL – New Capabilities for OLTP Workloads provided by Google News | Building an Offline First App with PouchDB provided by Google News |
Share this page