{"id":67487,"date":"2023-06-20T07:56:17","date_gmt":"2023-06-20T04:56:17","guid":{"rendered":"https:\/\/www.altoros.com\/blog\/?p=67487"},"modified":"2023-06-21T18:55:53","modified_gmt":"2023-06-21T15:55:53","slug":"couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud","status":"publish","type":"post","link":"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/","title":{"rendered":"Couchbase Capella vs. MongoDB Atlas vs. Amazon DynamoDB vs. Redis Enterprise Cloud"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_79_2 counter-hierarchy ez-toc-counter ez-toc-transparent ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/#The_rise_of_cloud_databases\" >The rise of cloud databases<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/#How_we_benchmarked_NoSQL_DBaaS\" >How we benchmarked NoSQL DBaaS<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/#Results_for_the_update-heavy_workload\" >Results for the update-heavy workload<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/#Want_more_results\" >Want more results?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/#Further_reading\" >Further reading<\/a><\/li><\/ul><\/nav><\/div>\n<h3><span class=\"ez-toc-section\" id=\"The_rise_of_cloud_databases\"><\/span>The rise of cloud databases<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>While IDC expects the global datasphere <a href=\"https:\/\/www.seagate.com\/files\/www-content\/our-story\/trends\/files\/idc-seagate-dataage-whitepaper.pdf\" rel=\"noopener\" target=\"_blank\">to reach<\/a> 175 zettabytes by 2025, this tremendous growth brings about new requirements for handling large volumes of information. As data formats become more diverse, traditional databases with their rigid schemas eventually make it difficult to store and query complex objects efficiently and fast enough. As a result, NoSQL systems emerged in response to a rise in the amount of information and the frequency it is stored, accessed, and updated. Adapting to the data-intensive reality, the NoSQL database market is <a href=\"https:\/\/www.maximizemarketresearch.com\/market-report\/global-nosql-database-market\/97851\/\" rel=\"noopener\" target=\"_blank\">expected<\/a> to grow from $4.4 billion in 2021 to $36.5 billion in 2029.<\/p>\n<p>At the same time, the overall database management system (DBMS) market is also changing, continues to explode, and is <a href=\"https:\/\/virtualizationreview.com\/articles\/2022\/12\/21\/cloud-dbms.aspx\" rel=\"noopener\" target=\"_blank\">projected<\/a> to hit $100 billion in 2023. Since 2021, the ongoing growth has been driven primarily by cloud databases as a service (DBaaS), according to <a href=\"https:\/\/blogs.gartner.com\/merv-adrian\/2022\/04\/16\/dbms-market-transformation-2021-the-big-picture\/\" rel=\"noopener\" target=\"_blank\">this report<\/a> from Gartner. With cloud DBaaS systems representing 49% of DBMS revenue in 2021, they have been spreading faster than traditional databases lately\u2014accounting for more than 84% of the overall market growth.<\/p>\n<p>Three years ago, Gartner <a href=\"https:\/\/www.datanami.com\/2020\/12\/02\/whos-winning-the-cloud-database-war\/\" rel=\"noopener\" target=\"_blank\">predicted<\/a> that 75% of all databases would be deployed or migrated to the cloud by 2022. This forecast was corroborated by a 2021 <a href=\"https:\/\/www.nutanix.com\/go\/it-practitioners-views-on-challenges-of-hybrid-cloud-dbs\" rel=\"noopener\" target=\"_blank\">report<\/a> from IDC, revealing that 75% of relational database deployments were already in private clouds. Analyzing the DBMS market, experts at Gartner <a href=\"https:\/\/blogs.gartner.com\/adam-ronthal\/2019\/06\/23\/future-database-management-systems-cloud\/\" rel=\"noopener\" target=\"_blank\">stated<\/a>, \u201c<i>cloud is now the default platform for managing data\u2026on-premises is the new legacy.<\/i>\u201d However, this shift introduced additional issues.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-report-2023-Market-Projection-2029-v2.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-report-2023-Market-Projection-2029-v2-1024x576.png\" width=\"720\"  class=\"alignnone size-large wp-image-67540\" \/><\/a><small>The NoSQL database market is to reach $36.6 billion by 2029 (<a href=\"https:\/\/www.maximizemarketresearch.com\/market-report\/global-nosql-database-market\/97851\/\" rel=\"noopener\" target=\"_blank\">Image credit<\/a>)<\/small><\/center><\/p>\n<p>In particular, managing data in the cloud is a major problem for 33% of companies, a 2022 <a href=\"https:\/\/resources.couchbase.com\/c\/couchbase-cloud-database-report?x=KlgGqA\" rel=\"noopener\" target=\"_blank\">survey<\/a> revealed, while 27% are challenged with the ability to scale to meet demand. The report also noted that 56% of enterprises with database infrastructure in the cloud have not been able to manage it exactly how they want to. Additionally, 77% of digital leaders want database infrastructure to be &#8220;invisible&#8221;\u2014to avoid struggling with this layer\u2014and 96% expect it to scale as needed.<\/p>\n<p>Besides, organizations adopting NoSQL databases face additional challenges, requiring a significant amount of time and effort to deploy and manage these systems. Some of the considerations include capacity planning, monitoring, as well as proper installation and configuration.<\/p>\n<p>In response to this, NoSQL DBaaS managed by third-party providers have also grown in popularity in recent years. The market of NoSQL databases deployed in the cloud is predicted to reach $24.5 billion by 2025, according to <a href=\"https:\/\/www.industryarc.com\/Report\/19215\/cloud-non-relational-database-market.html\" rel=\"noopener\" target=\"_blank\">this report<\/a>. The growth indicates that NoSQL DBaaS could account for the large portion of the overall cloud DBMS market in two years&#8217; time.<\/p>\n<p>Not only adoption\u2014cloud database offerings are gradually maturing, developing beyond basic functionality. \u201c<i>Whereas in the last 2\u20133 years, the emphasis has been moving to the cloud&#8230;this last year has seen a marked maturing of the majority of offerings,<\/i>\u201d a recent Gartner&#8217;s Magic Quadrant report <a href=\"https:\/\/www.datanami.com\/2023\/01\/23\/cloud-databases-are-maturing-rapidly-gartner-says\/\" rel=\"noopener\" target=\"_blank\">noted<\/a>.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-report-2023-Challenges-with-cloud-databases.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-report-2023-Challenges-with-cloud-databases-1024x584.png\" width=\"720\" class=\"aligncenter size-large wp-image-67527\" \/><\/a><small>Performance is an issue when moving and managing data (<a href=\"https:\/\/www.nutanix.com\/go\/it-practitioners-views-on-challenges-of-hybrid-cloud-dbs\" rel=\"noopener\" target=\"_blank\">Image credit<\/a>)<\/small><\/center><\/p>\n<p>Still, a 2021 <a href=\"https:\/\/www.nutanix.com\/go\/it-practitioners-views-on-challenges-of-hybrid-cloud-dbs\" rel=\"noopener\" target=\"_blank\">survey<\/a> from IDC discovered the top challenges of moving structured information between on-premises and public cloud: <i>performance<\/i> (38%), <i>data volume<\/i> (33%), and <i>interoperability<\/i> (33%). Understanding the importance of performance being the #1 issue for many data engineers, we\u2019ve been focusing on <a href=\"https:\/\/www.altoros.com\/blog\/tag\/benchmarking\/\">benchmarking<\/a> database latencies and throughput for years.<\/p>\n<p>Today, we are presenting the findings of a new <a href=\"https:\/\/www.altoros.com\/research-papers\/nosql-dbaas-performance-couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/\">report<\/a> that focuses on comparing the performance of popular NoSQL DBaaS. (Here&#8217;s an official <a href=\"https:\/\/www.prnewswire.com\/news-releases\/altoros-releases-2023-nosql-dbaas-performance-report-couchbase-capella-vs-amazon-dynamodb-vs-mongodb-atlas-vs-redis-enterprise-cloud-301854347.html\" rel=\"noopener\" target=\"_blank\">announcement<\/a>.) This time, we benchmarked <strong>Couchbase Capella<\/strong>, <strong>MongoDB Atlas<\/strong>, <strong>Amazon DynamoDB<\/strong>, and <strong>Redis Enterprise Cloud<\/strong>. The evaluation encompassed distinct cluster configurations\u20143, 6, 9, and 18 nodes\u2014and four kinds of workloads. Below, we reveal the results of the <i>update-heavy<\/i> scenario.<\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"How_we_benchmarked_NoSQL_DBaaS\"><\/span>How we benchmarked NoSQL DBaaS<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>To ensure the reliability of our findings, we conducted the comparison on Amazon Elastic Compute Cloud (EC2) instances. For consistent evaluation, the <a href=\"https:\/\/en.wikipedia.org\/wiki\/YCSB\" rel=\"noopener\" target=\"_blank\">Yahoo! Cloud Serving Benchmark<\/a> (YCSB) was used to assess the performance of the NoSQL databases.<\/p>\n<p>Described in this blog post, Workload A (<b>update-heavy<\/b>) is one of the core benchmarking scenarios in YCSB. It is a basic key\u2013value workload simulating the typical actions of an e-commerce solution, where large amounts of data are read and updated constantly. With this idea in mind, it fits the goals NoSQL DBaaS were created for.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-Report-2023-Yahoo-Cloud-Serving-Benchmark-components.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-Report-2023-Yahoo-Cloud-Serving-Benchmark-components-1024x576.png\" width=\"720\" class=\"aligncenter size-large wp-image-67521\" \/><\/a><small>The components of the YCSB client<\/small><\/center><\/p>\n<p>The workload was executed with the following settings:<\/p>\n<ul>\n<li style=\"margin-bottom: 6px;\">The read\/update ratio was 50%\u201350%.<\/li>\n<li style=\"margin-bottom: 6px;\">The Zipfian request distribution was used.<\/li>\n<li style=\"margin-bottom: 6px;\">The size of a data set was scaled in accordance with the cluster size: 25 million records (each 1 KB in size, consisting of 10 fields and a key) on a 3-node cluster, 50 million records on a 6-node cluster, 100 million records on a 9-node cluster, and 200 million records on a 18-node cluster.<\/li>\n<\/ul>\n<p><b>Couchbase Capella<\/b> stores data in buckets and collections, which are the logical groups of items\u2014key\u2013value pairs. vBuckets are physical partitions of the bucket data. By default, Capella creates a number of master vBuckets per bucket to store bucket data and evenly distribute vBuckets across all cluster nodes.<\/p>\n<p>Querying with document keys is the most efficient method, since a query request is sent directly to a proper vBucket holding target documents. This approach does not require any index creation and is the fastest way to retrieve a document due to the key\u2013value storage.<\/p>\n<p><b>Amazon DynamoDB<\/b>\u2019s read\/write capacity for the workload was calculated through experiments. The chosen values have the best balance of read and write capacities based on cost. For each cluster, the following values were used.<\/p>\n<ul>\n<li style=\"margin-bottom: 6px;\">3 nodes: 5,020 read and 9,390 write capacities<\/li>\n<li style=\"margin-bottom: 6px;\">6 nodes: 6,600 read and 18,650 write capacities<\/li>\n<li style=\"margin-bottom: 6px;\">9 nodes: 9,900 read and 27,575 write capacities<\/li>\n<li style=\"margin-bottom: 6px;\">18 nodes: 25,000 read and 53,315 write capacities<\/li>\n<\/ul>\n<p>For <b>MongoDB Atlas<\/b>, we sharded the collection by <code style=\"color: black; background-color: rgb(206, 218, 232);\">_id<\/code>, using this command:<\/p>\n<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<code style=\"color: black; background-color: rgb(206, 218, 232);\">sh.shardCollection( \"ycsb.usertable\", { _id: 1 }, false )<\/code><\/p>\n<p>The following queries were used to perform Workload A.<\/p>\n<div dir=\"ltr\" style=\"margin-left:0pt;\" align=\"center\">\n<table style=\"border:none;border-collapse:collapse;width:720px;\">\n<tbody>\n<tr style=\"height:0pt;\">\n<td style=\"width: 20%; border-width: 1pt; border-style: solid; border-color: rgb(183, 183, 183); vertical-align: top; background-color: rgb(206, 218, 232); padding: 5pt; overflow: hidden; overflow-wrap: break-word;\"><\/td>\n<td style=\"width: 40%; border-width: 1pt; border-style: solid; border-color: rgb(183, 183, 183); vertical-align: top; background-color: rgb(206, 218, 232); padding: 5pt; overflow: hidden; overflow-wrap: break-word;\">\n<p dir=\"ltr\" style=\"line-height:1.2;text-align: center;margin-top:0pt;margin-bottom:0pt;\"><span style=\"font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;font-size: 16px;\">Read<\/span><\/p>\n<\/td>\n<td style=\"width: 40%; border-width: 1pt; border-style: solid; border-color: rgb(183, 183, 183); vertical-align: top; background-color: rgb(206, 218, 232); padding: 5pt; overflow: hidden; overflow-wrap: break-word;\">\n<p dir=\"ltr\" style=\"line-height:1.2;text-align: center;margin-top:0pt;margin-bottom:0pt;\"><span style=\"font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;font-size: 16px;\">Update<\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height:0pt;\">\n<td style=\"border-left:solid #b7b7b7 1pt;border-right:solid #b7b7b7 1pt;border-bottom:solid #b7b7b7 1pt;border-top:solid #b7b7b7 1pt;vertical-align:middle;padding:5pt 5pt 5pt 5pt;overflow:hidden;overflow-wrap:break-word;\">\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">Couchbase Key&ndash;Value API<\/span><\/p>\n<\/td>\n<td style=\"border-left:solid #b7b7b7 1pt;border-right:solid #b7b7b7 1pt;border-bottom:solid #b7b7b7 1pt;border-top:solid #b7b7b7 1pt;vertical-align:middle;padding:5pt 5pt 5pt 5pt;overflow:hidden;overflow-wrap:break-word;\">\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\"><code style=\"color: black; background-color: rgb(206, 218, 232);\">collection.get(id, $2, getOptions().timeout(kvTimeout))<\/code><\/span><\/p>\n<\/td>\n<td style=\"border-left:solid #b7b7b7 1pt;border-right:solid #b7b7b7 1pt;border-bottom:solid #b7b7b7 1pt;border-top:solid #b7b7b7 1pt;vertical-align:middle;padding:5pt 5pt 5pt 5pt;overflow:hidden;overflow-wrap:break-word;\">\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\"><code style=\"color: black; background-color: rgb(206, 218, 232);\">collection.upsert(id, content, upsertOptions().timeout(kvTimeout).<br \/>expiry(documentExpiry).durability(persistTo, replicateTo))<\/code><\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height:0pt;\">\n<td style=\"border-width: 1pt; border-style: solid; border-color: rgb(183, 183, 183); vertical-align: middle; background-color: rgba(210, 221, 233, 0.4); padding: 5pt; overflow: hidden; overflow-wrap: break-word;\">\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">MongoDB Query<\/span><\/p>\n<\/td>\n<td style=\"border-width: 1pt; border-style: solid; border-color: rgb(183, 183, 183); vertical-align: middle; background-color: rgba(210, 221, 233, 0.4); padding: 5pt; overflow: hidden; overflow-wrap: break-word;\">\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#242729;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\"><code style=\"color: black; background-color: rgb(206, 218, 232);\">db.ycsb.find({_id: $1})<\/code><\/span><\/p>\n<\/td>\n<td style=\"border-width: 1pt; border-style: solid; border-color: rgb(183, 183, 183); vertical-align: middle; background-color: rgba(210, 221, 233, 0.4); padding: 5pt; overflow: hidden; overflow-wrap: break-word;\">\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\"><code style=\"color: black; background-color: rgb(206, 218, 232);\">db.ycsb.update(<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">&nbsp; &nbsp;<code style=\"color: black; background-color: rgb(206, 218, 232);\">{ _id: $1 },<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">&nbsp; &nbsp;<code style=\"color: black; background-color: rgb(206, 218, 232);\">{<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">&nbsp; &nbsp; <code style=\"color: black; background-color: rgb(206, 218, 232);\">$set: {<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">&nbsp; &nbsp; &nbsp; &nbsp;<code style=\"color: black; background-color: rgb(206, 218, 232);\">fieldN: $2<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <code style=\"color: black; background-color: rgb(206, 218, 232);\">}<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">&nbsp; &nbsp;<code style=\"color: black; background-color: rgb(206, 218, 232);\">})<\/code><\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height:0pt;\">\n<td style=\"border-width: 1pt; border-style: solid; border-color: rgb(183, 183, 183); vertical-align: middle; padding: 5pt; overflow: hidden; overflow-wrap: break-word;\">\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">DynamoDB API<\/span><\/p>\n<\/td>\n<td style=\"border-width: 1pt; border-style: solid; border-color: rgb(183, 183, 183); vertical-align: middle; padding: 5pt; overflow: hidden; overflow-wrap: break-word;\">\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\"><code style=\"color: black; background-color: rgb(206, 218, 232);\">{<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">&nbsp; &nbsp; <code style=\"color: black; background-color: rgb(206, 218, 232);\">&quot;TableName&quot;: &quot;usertable&quot;,<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">&nbsp; &nbsp; <code style=\"color: black; background-color: rgb(206, 218, 232);\">&quot;Key&quot;: {<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <code style=\"color: black; background-color: rgb(206, 218, 232);\">&quot;_id&quot;: &quot;$1&quot;<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<code style=\"color: black; background-color: rgb(206, 218, 232);\">},<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">&nbsp; &nbsp; <code style=\"color: black; background-color: rgb(206, 218, 232);\">&quot;ConsistentRead&quot;: &quot;false&quot;<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\"><code style=\"color: black; background-color: rgb(206, 218, 232);\">}<\/code><\/span><\/p>\n<\/td>\n<td style=\"border-width: 1pt; border-style: solid; border-color: rgb(183, 183, 183); vertical-align: middle; padding: 5pt; overflow: hidden; overflow-wrap: break-word;\">\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\"><code style=\"color: black; background-color: rgb(206, 218, 232);\">{<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">&nbsp;<code style=\"color: black; background-color: rgb(206, 218, 232);\">&quot;TableName&quot;: &quot;usertable&quot;,<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">&nbsp;<code style=\"color: black; background-color: rgb(206, 218, 232);\">&quot;Key&quot;: {_id = {S: $1}},<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">&nbsp;<code style=\"color: black; background-color: rgb(206, 218, 232);\">&quot;AttributeUpdates&quot;: {<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">&nbsp; &nbsp;<code style=\"color: black; background-color: rgb(206, 218, 232);\">$2={Value: {S: $3} }<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<code style=\"color: black; background-color: rgb(206, 218, 232);\">},<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">&nbsp;<code style=\"color: black; background-color: rgb(206, 218, 232);\">&quot;Action&quot;: &quot;PUT&quot;<\/code><\/span><\/p>\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\"><code style=\"color: black; background-color: rgb(206, 218, 232);\">}<\/code><\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height:0pt;\">\n<td style=\"border-width: 1pt; border-style: solid; border-color: rgb(183, 183, 183); vertical-align: middle; background-color: rgba(210, 221, 233, 0.4); padding: 5pt; overflow: hidden; overflow-wrap: break-word;\">\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\">Redis CLI<\/span><\/p>\n<\/td>\n<td style=\"border-width: 1pt; border-style: solid; border-color: rgb(183, 183, 183); vertical-align: middle; background-color: rgba(217, 227, 238, 0.6); padding: 5pt; overflow: hidden; overflow-wrap: break-word;\">\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\"><code style=\"color: black; background-color: rgb(206, 218, 232);\">HMGET $1 $2<\/code><\/span><\/p>\n<\/td>\n<td style=\"border-width: 1pt; border-style: solid; border-color: rgb(183, 183, 183); vertical-align: middle; background-color: rgba(217, 227, 238, 0.6); padding: 5pt; overflow: hidden; overflow-wrap: break-word;\">\n<p dir=\"ltr\" style=\"line-height:1.2;margin-top:0pt;margin-bottom:0pt;\"><span style=\"color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;\"><code style=\"color: black; background-color: rgb(206, 218, 232);\">HMSET $1 $2 $3<\/code><\/span><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Results_for_the_update-heavy_workload\"><\/span>Results for the update-heavy workload<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>On each type of a cluster, <b>Couchbase Capella<\/b> significantly outperformed the other databases. On a 3-node cluster, it had a throughput of 232,050 ops\/sec with a 2.67 ms latency. Couchbase Capella\u2019s performance improved all the way to an 18-node cluster, where it had a throughput of 423,580 ops\/sec with less than a 1 ms latency.<\/p>\n<p>As the cluster size increased, the other databases also demonstrated better performance. Each of the databases showed its best performance on an 18-node cluster. <b>MongoDB Atlas<\/b> achieved 58,290 ops\/sec with a 8.13 ms latency, <b>DynamoDB<\/b> reached 109,350 ops\/sec with a 5.1 ms latency, and <b>Redis Enterprise Cloud<\/b> was close to DynamoDB with 98,700 ops\/sec and a 4.15 ms latency.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-Report-2023-Workload-A-Throughput.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-Report-2023-Workload-A-Throughput-1024x576.png\" alt=\"\" width=\"720\" class=\"aligncenter size-large wp-image-67522\" \/><\/a><small>Throughput results under Workload A on 3-, 6-, 9-, and 18-node clusters<\/small><\/center><\/p>\n<p><b>Couchbase Capella<\/b> stood out with a latency of about 1 ms on 6-, 9-, and 18-node clusters, and a latency of 2.67 ms on 3 nodes. <b>Amazon DynamoDB<\/b> had a latency of around 6 ms on every cluster type. <b>Redis Enterprise Cloud<\/b> had a stable latency of about 5 ms, which decreased to 4.15 ms on an 18-node cluster. It also showed significant improvement in throughput only on an 18-node cluster.<\/p>\n<p>The latency of <b>MongoDB Atlas<\/b> decreased continuously from 25.67 ms on 3 nodes to 8 ms on an 18-node cluster. However, among other databases, MongoDB had the worst results. Nonetheless, it demonstrated the most growth with a cluster\u2019s expansion from 3 to 18 nodes, with a 3x reduction in latency and a 3x increase in throughput.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-Report-2023-Workload-A-Latency.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-Report-2023-Workload-A-Latency-1024x576.png\" alt=\"\" width=\"720\" class=\"aligncenter size-large wp-image-67523\" \/><\/a><small>Latency results under Workload A on 3-, 6-, 9-, and 18-node clusters<\/small><\/center><\/p>\n<p>Unlike other databases, which demonstrated solid performance, Amazon DynamoDB produced unstable results\u2014due to a high number of failed operations. Across each type of cluster, Amazon DynamoDB had an average of 43\u201358% of failed operations, with only the 18-node cluster showing results with 25% of failed operations.<\/p>\n<p><center><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-Report-2023-DynamoDB-errors.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-Report-2023-DynamoDB-errors-1024x576.png\" width=\"720\" class=\"aligncenter size-large wp-image-67524\" \/><\/a><small>Results for DynamoDB under Workload A on 3-, 6-, 9-, and 18-node clusters<\/small><\/center><\/p>\n<p>The full benchmark <a href=\"https:\/\/www.altoros.com\/research-papers\/nosql-dbaas-performance-couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/\">report<\/a> contains additional information, such as extrapolated cost per billion operations for Workload A and other scenarios.<\/p>\n<div id=\"attachment_67532\" style=\"width: 160px\" class=\"wp-caption alignright\"><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/Ivan-Shryma.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-67532\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/Ivan-Shryma-150x150.png\" width=\"150\" height=\"150\" class=\"size-thumbnail wp-image-67532\" \/><\/a><p id=\"caption-attachment-67532\" class=\"wp-caption-text\"><small>Ivan Shyrma<\/small><\/p><\/div>\n<blockquote><p>&#8220;The throughput of each database grew constantly depending on the type of a cluster. All databases achieved the throughput limit for each cluster type, except for DynamoDB during read operations on an 18-node cluster. Couchbase Capella demonstrated high throughput growth and clearly outperformed MongoDB Atlas, Amazon DynamoDB, and Redis Enterprise Cloud on each type of a cluster.&#8221;<\/p>\n<p>\u2014Ivan Shyrma, Data Engineer, Altoros<\/p><\/blockquote>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Want_more_results\"><\/span>Want more results?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>For more details on how we configured each NoSQL DBaaS, as well as the comprehensive performance evaluation, check out the complete report. In addition to Workload A, the benchmark encompassess comparisons across three more scenarios. These include <b>read-only<\/b> (100% read operations), <b>short-range scan<\/b> (95% scanning and 5% updates), and <b>pagination<\/b> (utilizing OFFSET and LIMIT filters).<\/p>\n<p>Download the full report <a href=\"https:\/\/www.altoros.com\/research-papers\/nosql-dbaas-performance-couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/\">here<\/a>.<\/p>\n<p><a href=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-2023-Preview.png\"><img decoding=\"async\" src=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-2023-Preview-1024x465.png\" width=\"720\" class=\"aligncenter size-large wp-image-67497\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Further_reading\"><\/span>Further reading<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/nosql-dbaas-comparison-2022-couchbase-capella-vs-mongodb-atlas\/\">NoSQL DBaaS Comparison 2022: Couchbase Capella vs. MongoDB Atlas<\/a><\/li>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/nosql-dbaas-comparison-2021-couchbase-capella-vs-azure-cosmos-db\/\">NoSQL DBaaS Comparison 2021: Couchbase Capella vs. Azure Cosmos DB<\/a><\/li>\n<li><a href=\"https:\/\/www.altoros.com\/blog\/dbaas-evaluation-couchbase-cloud-mongodb-atlas-and-amazon-dynamodb\/\">DBaaS Evaluation: Couchbase Cloud, MongoDB Atlas, and Amazon DynamoDB<\/a><\/li>\n<\/ul>\n<hr\/>\n<p><center><small>The blog post was written by <a href=\"https:\/\/www.altoros.com\/blog\/author\/alex\/\">Alex Khizhniak<\/a>, <a href=\"https:\/\/www.altoros.com\/blog\/author\/carlo\/\">Carlo Gutierrez<\/a>, and Ivan Shyrma.<\/small><\/center><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The rise of cloud databases<\/p>\n<p>While IDC expects the global datasphere to reach 175 zettabytes by 2025, this tremendous growth brings about new requirements for handling large volumes of information. As data formats become more diverse, traditional databases with their rigid schemas eventually make it difficult to store and query complex [&#8230;]<\/p>\n","protected":false},"author":5,"featured_media":67529,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","footnotes":"","_links_to":"","_links_to_target":""},"categories":[214],"tags":[894,692,895],"class_list":["post-67487","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutorials","tag-benchmarking","tag-nosql","tag-research-and-development"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Couchbase Capella vs. MongoDB Atlas vs. Amazon DynamoDB vs. Redis Enterprise Cloud | Altoros<\/title>\n<meta name=\"description\" content=\"Our new performance benchmark compares the throughput and latency of popular NoSQL DBaaS systems across diverse configurations and workloads.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Couchbase Capella vs. MongoDB Atlas vs. Amazon DynamoDB vs. Redis Enterprise Cloud | Altoros\" \/>\n<meta property=\"og:description\" content=\"The rise of cloud databases While IDC expects the global datasphere to reach 175 zettabytes by 2025, this tremendous growth brings about new requirements for handling large volumes of information. As data formats become more diverse, traditional databases with their rigid schemas eventually make it difficult to store and query complex [...]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/\" \/>\n<meta property=\"og:site_name\" content=\"Altoros\" \/>\n<meta property=\"article:published_time\" content=\"2023-06-20T04:56:17+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-06-21T15:55:53+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-report-2023-Couchbase-Capella-MongoDB-DynamoDB-Redis.gif\" \/>\n\t<meta property=\"og:image:width\" content=\"1280\" \/>\n\t<meta property=\"og:image:height\" content=\"720\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/gif\" \/>\n<meta name=\"author\" content=\"Alex Khizhniak\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Alex Khizhniak\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/\",\"url\":\"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/\",\"name\":\"Couchbase Capella vs. MongoDB Atlas vs. Amazon DynamoDB vs. Redis Enterprise Cloud | Altoros\",\"isPartOf\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-report-2023-Couchbase-Capella-MongoDB-DynamoDB-Redis.gif\",\"datePublished\":\"2023-06-20T04:56:17+00:00\",\"dateModified\":\"2023-06-21T15:55:53+00:00\",\"author\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/3d914db6ad1b2908c32c0dc5dcabc420\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/#primaryimage\",\"url\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-report-2023-Couchbase-Capella-MongoDB-DynamoDB-Redis.gif\",\"contentUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-report-2023-Couchbase-Capella-MongoDB-DynamoDB-Redis.gif\",\"width\":1280,\"height\":720},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.altoros.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Couchbase Capella vs. MongoDB Atlas vs. Amazon DynamoDB vs. Redis Enterprise Cloud\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#website\",\"url\":\"https:\/\/www.altoros.com\/blog\/\",\"name\":\"Altoros\",\"description\":\"Insight\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.altoros.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/3d914db6ad1b2908c32c0dc5dcabc420\",\"name\":\"Alex Khizhniak\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/06\/druzya-edit1-150x150.jpg\",\"contentUrl\":\"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/06\/druzya-edit1-150x150.jpg\",\"caption\":\"Alex Khizhniak\"},\"description\":\"Alex Khizhniak is Director of Technical Content Strategy at Altoros and a cofounder of a local Java User Group. Managing distributed teams since 2004, he has gained experience as a journalist, an editor-in-chief, a technical writer, a technology evangelist, a project manager, and a product owner. Alex is obsessed with AI\/ML, data science, data integration, ETL\/DWH, data quality, databases (SQL\/NoSQL), big data, IoT, and BI. The articles and industry reports he created or helped to publish reached out to 3,000,000+ tech-savvy readers. Some of the pieces were covered on TechRepublic, ebizQ, NetworkWorld, CIO.com, etc. Find him on Twitter at @alxkh.\",\"sameAs\":[\"https:\/\/x.com\/https:\/\/twitter.com\/alxkh\"],\"url\":\"https:\/\/www.altoros.com\/blog\/author\/alex\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Couchbase Capella vs. MongoDB Atlas vs. Amazon DynamoDB vs. Redis Enterprise Cloud | Altoros","description":"Our new performance benchmark compares the throughput and latency of popular NoSQL DBaaS systems across diverse configurations and workloads.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/","og_locale":"en_US","og_type":"article","og_title":"Couchbase Capella vs. MongoDB Atlas vs. Amazon DynamoDB vs. Redis Enterprise Cloud | Altoros","og_description":"The rise of cloud databases While IDC expects the global datasphere to reach 175 zettabytes by 2025, this tremendous growth brings about new requirements for handling large volumes of information. As data formats become more diverse, traditional databases with their rigid schemas eventually make it difficult to store and query complex [...]","og_url":"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/","og_site_name":"Altoros","article_published_time":"2023-06-20T04:56:17+00:00","article_modified_time":"2023-06-21T15:55:53+00:00","og_image":[{"width":1280,"height":720,"url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-report-2023-Couchbase-Capella-MongoDB-DynamoDB-Redis.gif","type":"image\/gif"}],"author":"Alex Khizhniak","twitter_misc":{"Written by":"Alex Khizhniak","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/","url":"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/","name":"Couchbase Capella vs. MongoDB Atlas vs. Amazon DynamoDB vs. Redis Enterprise Cloud | Altoros","isPartOf":{"@id":"https:\/\/www.altoros.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/#primaryimage"},"image":{"@id":"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/#primaryimage"},"thumbnailUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-report-2023-Couchbase-Capella-MongoDB-DynamoDB-Redis.gif","datePublished":"2023-06-20T04:56:17+00:00","dateModified":"2023-06-21T15:55:53+00:00","author":{"@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/3d914db6ad1b2908c32c0dc5dcabc420"},"breadcrumb":{"@id":"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/#primaryimage","url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-report-2023-Couchbase-Capella-MongoDB-DynamoDB-Redis.gif","contentUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2023\/06\/NoSQL-DBaaS-report-2023-Couchbase-Capella-MongoDB-DynamoDB-Redis.gif","width":1280,"height":720},{"@type":"BreadcrumbList","@id":"https:\/\/www.altoros.com\/blog\/couchbase-capella-vs-mongodb-atlas-vs-amazon-dynamodb-vs-redis-enterprise-cloud\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.altoros.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Couchbase Capella vs. MongoDB Atlas vs. Amazon DynamoDB vs. Redis Enterprise Cloud"}]},{"@type":"WebSite","@id":"https:\/\/www.altoros.com\/blog\/#website","url":"https:\/\/www.altoros.com\/blog\/","name":"Altoros","description":"Insight","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.altoros.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/3d914db6ad1b2908c32c0dc5dcabc420","name":"Alex Khizhniak","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.altoros.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/06\/druzya-edit1-150x150.jpg","contentUrl":"https:\/\/www.altoros.com\/blog\/wp-content\/uploads\/2017\/06\/druzya-edit1-150x150.jpg","caption":"Alex Khizhniak"},"description":"Alex Khizhniak is Director of Technical Content Strategy at Altoros and a cofounder of a local Java User Group. Managing distributed teams since 2004, he has gained experience as a journalist, an editor-in-chief, a technical writer, a technology evangelist, a project manager, and a product owner. Alex is obsessed with AI\/ML, data science, data integration, ETL\/DWH, data quality, databases (SQL\/NoSQL), big data, IoT, and BI. The articles and industry reports he created or helped to publish reached out to 3,000,000+ tech-savvy readers. Some of the pieces were covered on TechRepublic, ebizQ, NetworkWorld, CIO.com, etc. Find him on Twitter at @alxkh.","sameAs":["https:\/\/x.com\/https:\/\/twitter.com\/alxkh"],"url":"https:\/\/www.altoros.com\/blog\/author\/alex\/"}]}},"_links":{"self":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/67487","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/comments?post=67487"}],"version-history":[{"count":61,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/67487\/revisions"}],"predecessor-version":[{"id":67576,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/posts\/67487\/revisions\/67576"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/media\/67529"}],"wp:attachment":[{"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/media?parent=67487"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/categories?post=67487"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.altoros.com\/blog\/wp-json\/wp\/v2\/tags?post=67487"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}