DBMS > Cassandra vs. Ehcache vs. Microsoft Azure Cosmos DB vs. MySQL vs. Oracle Berkeley DB
System Properties Comparison Cassandra vs. Ehcache vs. Microsoft Azure Cosmos DB vs. MySQL vs. Oracle Berkeley DB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Cassandra Xexclude from comparison | Ehcache Xexclude from comparison | Microsoft Azure Cosmos DB former name was Azure DocumentDB Xexclude from comparison | MySQL Xexclude from comparison | Oracle Berkeley DB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Wide-column store based on ideas of BigTable and DynamoDB Optimized for write access | A widely adopted Java cache with tiered storage options | Globally distributed, horizontally scalable, multi-model database service | Widely used open source RDBMS | Widely used in-process key-value store | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Wide column store | Key-value store | Document store Graph DBMS Key-value store Wide column store | Relational DBMS Key/Value like access via memcached API | Key-value store supports sorted and unsorted key sets Native XML DBMS in the Oracle Berkeley DB XML version | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Vector DBMS starting with release V5 | Spatial DBMS | Document store Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | cassandra.apache.org | www.ehcache.org | azure.microsoft.com/services/cosmos-db | www.mysql.com | www.oracle.com/database/technologies/related/berkeleydb.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | cassandra.apache.org/doc/latest | www.ehcache.org/documentation | learn.microsoft.com/azure/cosmos-db | dev.mysql.com/doc | docs.oracle.com/cd/E17076_05/html/index.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation Apache top level project, originally developped by Facebook | Terracotta Inc, owned by Software AG | Microsoft | Oracle since 2010, originally MySQL AB, then Sun | Oracle originally developed by Sleepycat, which was acquired by Oracle | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2008 | 2009 | 2014 | 1995 | 1994 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 4.1.3, July 2023 | 3.10.0, March 2022 | 8.4.0, April 2024 | 18.1.40, May 2020 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache version 2 | Open Source Apache Version 2; commercial licenses available | commercial | Open Source GPL version 2. Commercial licenses with extended functionallity are available | Open Source 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. | Astra DB: Multi-cloud DBaaS built on Apache Cassandra. | Aiven for MySQL: Fully managed MySQL, deployable in the cloud of your choice, with seamless integrations and lightning-fast setup. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | Java | C and C++ | C, Java, C++ (depending on the Berkeley DB edition) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | BSD Linux OS X Windows | All OS with a Java VM | hosted | FreeBSD Linux OS X Solaris Windows | AIX Android FreeBSD iOS Linux OS X Solaris VxWorks Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free | schema-free | yes | schema-free | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | yes JSON types | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | yes only with the Berkeley DB XML edition | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | restricted only equality queries, not always the best performing solution | no | yes All properties auto-indexed by default | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like SELECT, DML and DDL statements (CQL) | no | SQL-like query language | yes with proprietary extensions | yes SQL interfaced based on SQLite is available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Proprietary protocol CQL (Cassandra Query Language, an SQL-like language) Thrift | JCache | DocumentDB API Graph API (Gremlin) MongoDB API RESTful HTTP API Table API | ADO.NET JDBC ODBC Proprietary native API | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C# C++ Clojure Erlang Go Haskell Java JavaScript Node.js Perl PHP Python Ruby Scala | Java | .Net C# Java JavaScript JavaScript (Node.js) MongoDB client drivers written for various programming languages Python | Ada C C# C++ D Delphi Eiffel Erlang Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | .Net Figaro is a .Net framework assembly that extends Berkeley DB XML into an embeddable database engine for .NET others Third-party libraries to manipulate Berkeley DB files are available for many languages C C# C++ Java JavaScript (Node.js) 3rd party binding Perl Python Tcl | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | no | JavaScript | yes proprietary syntax | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes | yes Cache Event Listeners | JavaScript | yes | yes only for the SQL API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding no "single point of failure" | Sharding by using Terracotta Server | Sharding Implicit feature of the cloud service | horizontal partitioning, sharding with MySQL Cluster or MySQL Fabric | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | selectable replication factor Representation of geographical distribution of servers is possible | yes by using Terracotta Server | yes Implicit feature of the cloud service | Multi-source replication Source-replica replication | Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | no | with Hadoop integration Integration with Hadoop/HDInsight on Azure* | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Immediate Consistency can be individually decided for each write operation | Tunable Consistency (Strong, Eventual, Weak) | Bounded Staleness Consistent Prefix Eventual Consistency Immediate Consistency Consistency level configurable on request level Session Consistency | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | yes not for MyISAM storage engine | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no Atomicity and isolation are supported for single operations | yes supports JTA and can work as an XA resource | Multi-item ACID transactions with snapshot isolation within a partition | ACID not for MyISAM storage engine | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes table locks or row locks depending on storage engine | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes using a tiered cache-storage approach | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users can be defined per object | no | Access rights can be defined down to the item level | Users with fine-grained authorization concept no user groups or roles | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cassandra | Ehcache | Microsoft Azure Cosmos DB former name was Azure DocumentDB | MySQL | Oracle Berkeley DB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Apache Cassandra is the leading NoSQL, distributed database management system, well... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | No single point of failure ensures 100% availability . Operational simplicity for... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | Internet of Things (IOT), fraud detection applications, recommendation engines, product... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Apple, Netflix, Uber, ING,, Intuit,Fidelity, NY Times, Outbrain, BazaarVoice, Best... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | Cassandra is used by 40% of the Fortune 100. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | Apache license Pricing for commercial distributions provided by DataStax and available... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | How Concide Built its Chat Platform with Enhanced Document Management for Legal Tech Professionals Astra Vectorize: Generate Vector Embeddings with 1 Line of Code GitHub Copilot + DataStax Astra DB: Build GenAI Apps 100x Faster | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We 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 Cassandra Forward event: Want to level up your Cassandra game? Watch now replays of the March 2023 sessions. » more | CData: Connect to Big Data & NoSQL through standard Drivers. » more | CData: Connect to Big Data & NoSQL through standard Drivers. » more Aiven for MySQL: Fully managed MySQL, deployable in the cloud of your choice, with seamless integrations and lightning-fast setup. » more Navicat for MySQL is the ideal solution for MySQL/MariaDB administration and development. » more Navicat Monitor is a safe, simple and agentless remote server monitoring tool for MySQL and many other database management systems. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cassandra | Ehcache | Microsoft Azure Cosmos DB former name was Azure DocumentDB | MySQL | Oracle Berkeley DB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cassandra keeps climbing the ranks of the DB-Engines Ranking Oracle is the DBMS of the Year Winners, losers and an attractive newcomer in Novembers DB-Engines 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Microsoft Build 2024: Cosmos DB for NoSQL gets vector search Cassandra is the “best f*cking database for gen AI,” says DataStax CEO Why Apache Cassandra 5.0 Is a Game-Changer for Developers How Uber Optimized Cassandra Operations At Scale Here's What to Know About Apache Cassandra 5.0 provided by Google News | Atlassian asks customers to patch critical Jira vulnerability Critical Jira Flaw in Atlassian Could Lead to RCE DZone Coding Java JBoss 5 to 7 in 11 steps provided by Google News | Start your AI journey with Microsoft Azure Cosmos DB—compete for $10K Microsoft Build 2024: Cosmos DB for NoSQL gets vector search Public preview: Change partition key of a container in Azure Cosmos DB (NoSQL API) | Azure updates At Build, Microsoft Fabric, PostgreSQL and Cosmos DB get AI enhancements General Availability: Data API builder | Azure updates provided by Google News | Amazon Aurora MySQL version 2 (with MySQL 5.7 compatibility) to version 3 (with MySQL 8.0 compatibility) upgrade ... Enterprise Manager: How Comcast enhanced monitoring for MySQL InnoDB Clusters Ultimate MySQL Workbench Installation Guide [2024 Edition] Zendesk Moves from DynamoDB to MySQL and S3 to Save over 80% in Costs How to Create a MySQL 8 Database User With Remote Access provided by Google News | ACM recognizes far-reaching technical achievements with special awards Margo I. Seltzer | Berkman Klein Center Database Trends Report: SQL Beats NoSQL, MySQL Most Popular -- ADTmag How to store financial market data for backtesting The importance of bitcoin nodes and how to start one provided by Google News |
Share this page