DBMS > MongoDB vs. MySQL vs. Oracle Berkeley DB vs. RRDtool vs. Spark SQL
System Properties Comparison MongoDB vs. MySQL vs. Oracle Berkeley DB vs. RRDtool vs. Spark SQL
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | MongoDB Xexclude from comparison | MySQL Xexclude from comparison | Oracle Berkeley DB Xexclude from comparison | RRDtool Xexclude from comparison | Spark SQL Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | One of the most popular document stores available both as a fully managed cloud service and for deployment on self-managed infrastructure | Widely used open source RDBMS | Widely used in-process key-value store | Industry standard data logging and graphing tool for time series data. RRD is an acronym for round-robin database. The data is stored in a circular buffer, thus the system storage footprint remains constant over time. | Spark SQL is a component on top of 'Spark Core' for structured data processing | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document 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 | Time Series DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS Search engine integrated Lucene index, currently in MongoDB Atlas only. Time Series DBMS Time Series Collections introduced in Release 5.0 Vector DBMS currently available in the MongoDB Atlas cloud service only | Document store Spatial DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.mongodb.com | www.mysql.com | www.oracle.com/database/technologies/related/berkeleydb.html | oss.oetiker.ch/rrdtool | spark.apache.org/sql | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.mongodb.com/docs/manual | dev.mysql.com/doc | docs.oracle.com/cd/E17076_05/html/index.html | oss.oetiker.ch/rrdtool/doc | spark.apache.org/docs/latest/sql-programming-guide.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | MongoDB, Inc | Oracle since 2010, originally MySQL AB, then Sun | Oracle originally developed by Sleepycat, which was acquired by Oracle | Tobias Oetiker | Apache Software Foundation | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2009 | 1995 | 1994 | 1999 | 2014 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 6.0.7, June 2023 | 8.4.0, April 2024 | 18.1.40, May 2020 | 1.8.0, 2022 | 3.5.0 ( 2.13), September 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source MongoDB Inc.'s Server Side Public License v1. Prior versions were published under GNU AGPL v3.0. Commercial licenses are also available. | Open Source GPL version 2. Commercial licenses with extended functionallity are available | Open Source commercial license available | Open Source GPL V2 and FLOSS | Open Source Apache 2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no MongoDB available as DBaaS (MongoDB Atlas) | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. |
| Aiven for MySQL: Fully managed MySQL, deployable in the cloud of your choice, with seamless integrations and lightning-fast setup. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | C and C++ | C, Java, C++ (depending on the Berkeley DB edition) | C Implementations in Java (e.g. RRD4J) and C# available | Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Solaris Windows | FreeBSD Linux OS X Solaris Windows | AIX Android FreeBSD iOS Linux OS X Solaris VxWorks Windows | HP-UX Linux | Linux OS X Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free Although schema-free, documents of the same collection often follow the same structure. Optionally impose all or part of a schema by defining a JSON schema. | yes | schema-free | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes string, integer, double, decimal, boolean, date, object_id, geospatial | yes | no | Numeric data only | 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. | yes | yes only with the Berkeley DB XML edition | no Exporting into and restoring from XML files possible | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | Read-only SQL queries via the MongoDB Atlas SQL Interface | yes with proprietary extensions | yes SQL interfaced based on SQLite is available | no | SQL-like DML and DDL statements | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | GraphQL HTTP REST Prisma proprietary protocol using JSON | ADO.NET JDBC ODBC Proprietary native API | in-process shared library Pipes | JDBC ODBC | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Actionscript unofficial driver C C# C++ Clojure unofficial driver ColdFusion unofficial driver D unofficial driver Dart unofficial driver Delphi unofficial driver Erlang Go Groovy unofficial driver Haskell Java JavaScript Kotlin Lisp unofficial driver Lua unofficial driver MatLab unofficial driver Perl PHP PowerShell unofficial driver Prolog unofficial driver Python R unofficial driver Ruby Rust Scala Smalltalk unofficial driver Swift | 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 | C with librrd library C# with a different implementation of RRDTool Java with a different implementation of RRDTool JavaScript (Node.js) with a different implementation of RRDTool Lua Perl PHP with a wrapper library Python Ruby | Java Python R Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | JavaScript | yes proprietary syntax | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes in MongoDB Atlas only | yes | yes only for the SQL API | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding Partitioned by hashed, ranged, or zoned sharding keys. Live resharding allows users to change their shard keys as an online operation with zero downtime. | horizontal partitioning, sharding with MySQL Cluster or MySQL Fabric | none | none | yes, utilizing Spark Core | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-Source deployments with MongoDB Atlas Global Clusters Source-replica replication | Multi-source replication Source-replica replication | Source-replica replication | none | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | no | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency can be individually decided for each read operation Immediate Consistency default behaviour | Immediate Consistency | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no typically not used, however similar functionality with DBRef possible | yes not for MyISAM storage engine | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | Multi-document ACID Transactions with snapshot isolation | ACID not for MyISAM storage engine | ACID | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes table locks or row locks depending on storage engine | yes by using the rrdcached daemon | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes optional, enabled by default | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes In-memory storage engine introduced with MongoDB version 3.2 | yes | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users and roles | Users with fine-grained authorization concept no user groups or roles | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MongoDB | MySQL | Oracle Berkeley DB | RRDtool | Spark SQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | MongoDB provides an integrated suite of cloud database and data services to accelerate... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | Built around the flexible document data model and unified API, MongoDB is a developer... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | AI-enriched intelligent apps (Continental, Telefonica, Iron Mountain) Internet of... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | ADP, Adobe, Amadeus, AstraZeneca, Auto Trader, Barclays, BBVA, Bosch, Cisco, CERN,... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | Hundreds of millions downloads, over 150,000+ Atlas clusters provisioned every month... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | MongoDB database server: Server-Side Public License (SSPL) . Commercial licenses... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 Navicat for MongoDB gives you a highly effective GUI interface for MongoDB database management, administration and development. » more Studio 3T: The world's favorite IDE for working with MongoDB » more | Navicat Monitor is a safe, simple and agentless remote server monitoring tool for MySQL and many other database management systems. » more Navicat for MySQL is the ideal solution for MySQL/MariaDB administration and development. » 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MongoDB | MySQL | Oracle Berkeley DB | RRDtool | Spark SQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Snowflake is the DBMS of the Year 2021 PostgreSQL is the DBMS of the Year 2020 PostgreSQL is the DBMS of the Year 2018 | 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 | Time Series DBMS are the database category with the fastest increase in popularity Time Series DBMS as a new trend? | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Alger Mid Cap Growth Fund Maintains its Conviction in MongoDB (MDB) Bendigo and Adelaide Bank Partners with MongoDB to Modernize Core Banking Technology Using Generative AI Should You Buy MongoDB, Snowflake, and Atlassian at Their 52-Week Lows? MongoDB loses nearly a quarter of its value after adjusting revenue forecasts MongoDB shares sink 23% after management trims guidance provided by Google News | Early MySQL engineer questions whether Oracle is unintentionally killing off the open source database 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 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 | Margo Seltzer Named ACM Athena Lecturer for Technical and Mentoring Contributions ACM recognizes far-reaching technical achievements with special awards Margo I. Seltzer | Berkman Klein Center Oracle buys Sleepycat Software How to store financial market data for backtesting provided by Google News | SQLi vulnerability in Cacti could lead to RCE (CVE-2023-51448) Critical IP spoofing bug patched in Cacti How to install Cacti SNMP Monitor on Ubuntu The 16 Best Open Source Network Monitoring Tools in 2023 Cacti Cross-Site-Scripting Vulnerability Let Attacker Poison Database provided by Google News | Use Amazon Athena with Spark SQL for your open-source transactional table formats | Amazon Web Services What is Apache Spark? The big data platform that crushed Hadoop Cracking the Apache Spark Interview: 80+ Top Questions and Answers for 2024 Performance Insights from Sigma Rule Detections in Spark Streaming Simba Technologies(R) Introduces New, Powerful JDBC Driver With SQL Connector for Apache Spark(TM) provided by Google News |
Share this page