🌐
Medium
medium.com › @Tom1212121 › navigating-the-nosql-labyrinth-dynamodb-cassandra-mongodb-and-redis-abe19b73c95e
Navigating the No-SQL Labyrinth: DynamoDB, Cassandra, MongoDB and Redis | by Tomer Ben David | Medium
March 13, 2024 - Cassandra uses a wide-column store model, allowing for flexible data structures within a defined schema. This provides a good balance between performance and data organization. However, setting up Cassandra clusters can be more complex compared to DynamoDB’s managed service approach.
🌐
GeeksforGeeks
geeksforgeeks.org › dbms › cassandra-vs-dynamodb
Cassandra vs DynamoDB: Best NoSQL Database for 2025 - GeeksforGeeks
July 23, 2025 - It permits a data store that is both scalable and fault-tolerant, having high availability and predictable performance. On the other hand, DynamoDB uses a key-value and document store model as opposed to wide-column stores in Cassandra.
Discussions

Why is Cassandra considered column-based and DynamoDB key-value?
Cassandra and DynamoDB are both: https://en.wikipedia.org/wiki/Wide-column_store . I think it's a bad name, since it creates confusion with "column stores", i.e. https://en.wikipedia.org/wiki/Column-oriented_DBMS , which are not related. I think some confusion comes because in the original Dynamo paper https://www.allthingsdistributed.com/files/amazon-dynamo-sosp2007.pdf it is only a key-value store. But DynamoDB (the AWS offering) is not the same thing as Dynamo the paper. Also remember, just about any database is a key-value store. MySQL fulfills the criteria of a key value store. So does Cassandra. AWS itself describes DynamoDB as a "document store", but that's bad too. They're referencing that it doesn't enforce a schema (which *is* a key difference from Cassandra). However, I think it misses the capability of arbitrary indexes within the document, which is something that Mongo and XML databases do. More on reddit.com
🌐 r/nosql
3
6
August 21, 2021
When would you NOT choose DynamoDB where you'd typically use RDBMS?
I prefer rdmbs when query patterns aren't known ahead of time, when there's lots of relationships between data, and when update patterns of that data would make it cumbersome to maintain denormalized updates in something like dynamo or Cassandra. Big table style databases are great if your data relationships are simple and all well known ahead of data modeling time. Trying to map an rdbms mentality to data modeling in a big table style database will make for a world of hurt. More on reddit.com
🌐 r/aws
90
89
February 25, 2023
Cost of running Cassandra on AWS vs DynamoDB
Has anyone deployed a database on Cassandra on AWS and then the same database on DynamoDB. What was the cost difference? More on reddit.com
🌐 r/cassandra
2
3
November 18, 2018
When is RDS really the better choice over something NoSQL like DynamoDb?
Relational databases should be your first choice always, until performance dictates otherwise. All the NOSQL database make sacrifices in order to get higher speed. If you've ever used Cassandra, you'll know that write speeds are extremely fast, but the query is extremely specific. You can't do random queries on Cassandra, they'll usually timeout unless it's a subquery of a supported query. It's also great for sharding large amounts of data. So it works better than relational databases for very specific circumstances. Same goes for MongoDB or Redis that requires all data to be in memory. You may very well need to make these sacrifices in order to get the performance or scaling that you need. But you should always start with RDB because it will handle everything up until you get to the size when you need to switch strategies to a NOSQL. More on reddit.com
🌐 r/ExperiencedDevs
83
0
April 5, 2024
People also ask

Can I migrate from Cassandra to DynamoDB?
Yes, but migration requires careful planning. Cassandra’s wide-column model needs to be remapped to DynamoDB’s partition key/sort key design. A typical migration involves: Mapping queries to DynamoDB access patterns. Bulk-loading data via AWS Glue/DMS. Running dual-writes during the transition.Because of data-modeling differences, migration often requires schema redesign and ETL pipelines.
🌐
knowi.com
knowi.com › home › cassandra vs dynamodb (2026): complete guide with pricing, performance, usecase & migration tips
Cassandra vs DynamoDB 2026: Full Comparison With Real Costs
Cassandra vs DynamoDB for analytics workloads?
Cassandra integrates well with Apache Spark, Kafka, and Hadoop for large-scale analytics and streaming.DynamoDB integrates with AWS OpenSearch Service, Glue, and Athena for querying and visualization.Platforms like Knowi bridge both, providing unified analytics across Cassandra, DynamoDB, and other data sources without requiring ETL.
🌐
knowi.com
knowi.com › home › cassandra vs dynamodb (2026): complete guide with pricing, performance, usecase & migration tips
Cassandra vs DynamoDB 2026: Full Comparison With Real Costs
Does DynamoDB support multi-cloud?
No. DynamoDB is an AWS-only service. It integrates tightly with AWS services but cannot run outside of AWS. For multi-cloud or hybrid strategies, Cassandra is the stronger choice.
🌐
knowi.com
knowi.com › home › cassandra vs dynamodb (2026): complete guide with pricing, performance, usecase & migration tips
Cassandra vs DynamoDB 2026: Full Comparison With Real Costs
🌐
Knowi
knowi.com › home › cassandra vs dynamodb (2026): complete guide with pricing, performance, usecase & migration tips
Cassandra vs DynamoDB 2026: Full Comparison With Real Costs
April 22, 2026 - Cassandra is an open-source, peer-to-peer distributed database that gives organizations control, flexibility, and multi-cloud freedom. DynamoDB is a fully managed, serverless AWS service, ideal for teams that want simplicity, automation, and ...
🌐
Reddit
reddit.com › r/nosql › why is cassandra considered column-based and dynamodb key-value?
r/nosql on Reddit: Why is Cassandra considered column-based and DynamoDB key-value?
August 21, 2021 -

They rely on the exact same data model concept of having a table where we first identify the row / key / item and then select some columns / values in order to retrieve the wanted cell / attribute.

Here is one quote from a relevant article:

"The top level data structure in Cassandra is the keyspace which is analogous to a relational database. The keyspace is the container for the tables and it is where you configure the replica count and placement. Keyspaces contain tables (formerly called column families) composed of rows and columns. A table schema must be defined at the time of table creation.

The top level structure for DynamoDB is the table which has the same functionality as the Cassandra table. Rows are items, and cells are attributes. In DynamoDB, it’s possible to define a schema for each item, rather than for the whole table.

Both tables store data in sparse rows—for a given row, they store only the columns present in that row. Each table must have a primary key that uniquely identifies rows or items. Every table must have a primary key which has two components."

Sounds like pretty much the same thing. So, why the difference in terminology?

🌐
AWS
aws.amazon.com › blogs › database › introduction-to-amazon-dynamodb-for-cassandra-developers
Introduction to Amazon DynamoDB for Cassandra developers | Amazon Web Services
September 9, 2021 - This blog post introduces Amazon DynamoDB to Cassandra developers and helps you get started with DynamoDB by showing some basic operations in Cassandra, and using AWS CLI to perform the same operations in DynamoDB. Amazon DynamoDB is a fully managed, multiregion, multimaster NoSQL database ...
🌐
ScyllaDB
scylladb.com › learn › dynamodb › introduction-to-dynamodb › comparison
DynamoDB Comparison | ScyllaDB
January 21, 2025 - With Cassandra, the number of replicas per cluster is the replication factor and the user can control it. In contrast, with DynamoDB, data is located in a single region by default and replicates to three availability zones there.
Find elsewhere
🌐
Bytebase
bytebase.com › blog › comparison › dynamodb vs. cassandra: a complete comparison in 2025
DynamoDB vs. Cassandra: a Complete Comparison in 2025 | Bytebase
May 20, 2025 - It provides linear scalability, meaning that capacity can be increased simply by adding more nodes to the cluster. Cassandra's design emphasizes high availability and partition tolerance, making it suitable for applications that cannot afford downtime. DynamoDB operates as a fully managed service with a proprietary architecture hidden from users.
🌐
DynamoDB
dynobase.dev › dynamodb-vs-cassandra
DynamoDB vs Cassandra - The Ultimate Comparison
May 18, 2022 - If you need a key-value store with a dynamic schema and no infrastructure, DynamoDB is a great choice. In addition to that, it has some great features like high availability, scalability, security, and ensures millisecond range latency at any scale.
🌐
Sprinkle Data
sprinkledata.ai › blogs › cassandra-vs-dynamodb-a-comprehensive-comparison
Cassandra vs DynamoDB: A Comprehensive Comparison for NoSQL Databases
March 15, 2024 - Originally developed by Facebook and later open-sourced by the Apache Software Foundation, Cassandra is known for its linear scalability, fault tolerance, and high performance. It utilizes a decentralized architecture based on a peer-to-peer model, making it ideal for use cases requiring high availability and resilience to hardware failures. Amazon DynamoDB, on the other hand, is a fully managed NoSQL database service offered by Amazon Web Services (AWS).
🌐
Hacker News
news.ycombinator.com › item
At reddit, we used Cassandra, and it was a huge pain to manage. At Netflix we us... | Hacker News
December 4, 2019 - If this service had existed then, it would have made life so much easier · It's not really an admission that one is "better" than the other, it's just an admission that people like managed drop-in replacements for tools that they're already using
🌐
DZone
dzone.com › data engineering › databases › comparing cassandra and dynamodb: a side-by-side guide
Cassandra vs DynamoDB: NoSQL Database Comparison Guide
August 21, 2025 - DynamoDB’s seamless integration with other AWS services, built-in security, and automatic backups make it a strong choice for cloud-native applications and microservices. On the other hand, Cassandra provides more tuning knobs and control for on-prem or hybrid environments.
🌐
Reddit
reddit.com › r/aws › when would you not choose dynamodb where you'd typically use rdbms?
r/aws on Reddit: When would you NOT choose DynamoDB where you'd typically use RDBMS?
February 25, 2023 -

Hey there,

having read the DynamoDB Book from Alex DeBrie and watched almost all content on YT from Rick and Alex, I constantly ask myself.. since you can basically model all kinds of relational data and denormalize classic RDBMS models to fit DynamoDB and it's going to perform amazing at any scale - when would you actually still prefer something like Postgres (RDS or Aurora)?

One thing I might imagine is, when you start with some project and have no clue about your near future access patterns.

Another thing I hear regularly - "We understand RDBMS and develop faster with it - we don't understand DynamoBD - all data in one table? Sounds wrong.".

Dynamo is harder to grasp and modelling takes more time and brainpower. Also, RDS and Aurora can scale to some crazy figures - it's hard to convince people to try DynamoDB if AWS offers RDBMS solutions that can also scale to 10.000 / 100.000 requests per second - I was actually not able to find any use case online where people needed to switch from RDS / Aurora to DynamoDB because of performance problems.

So.. have you had any real world experience with that? What's your usual choice?

Thx!

Top answer
1 of 35
115
I prefer rdmbs when query patterns aren't known ahead of time, when there's lots of relationships between data, and when update patterns of that data would make it cumbersome to maintain denormalized updates in something like dynamo or Cassandra. Big table style databases are great if your data relationships are simple and all well known ahead of data modeling time. Trying to map an rdbms mentality to data modeling in a big table style database will make for a world of hurt.
2 of 35
115
You have it backwards, you normally need to find a very good reason to chose DynamoDB. All the articles talking about how you "can" model relational data in a non-relational way are describing approaches that frankly normally just suck compared to using a proper RDBMS with actual support. DynamoDB gets more and more features to solve the worst pain points and ease getting copies of data out to other systems, so the balance has shifted over the years, but that is still the underlying reality. You can find lots of examples of very specific niches where folks have put a lot of effort into making it work for them and are proud of it, or have a very specific use case they are willing to limit themselves to, but don't misunderstand those as saying that should be your first choice. Just like you can scale to any scale you want with things built on a RDBMS and sharding, custom graph stores, etc. you just maybe shouldn't most of the time if you have another option. You want to pick the solution that requires lots of creative workarounds to be your choice of necessity, not your choice of ooo looks new and different to play with. https://mcfunley.com/choose-boring-technology (Keep in context written in 2015 and the exact balance for specific technologies continues to shift.)
🌐
Reddit
reddit.com › r › cassandra › comments › 9yaflf › cost_of_running_cassandra_on_aws_vs_dynamodb
Cost of running Cassandra on AWS vs DynamoDB
November 18, 2018 - Has anyone deployed a database on Cassandra on AWS and then the same database on DynamoDB. What was the cost difference?
🌐
Reddit
reddit.com › r/experienceddevs › when is rds really the better choice over something nosql like dynamodb?
r/ExperiencedDevs on Reddit: When is RDS really the better choice over something NoSQL like DynamoDb?
April 5, 2024 -

TL;DR:

Have I been indoctrinated into believing that NoSQL solutions like DDB (DynamoDB) are always the better architectural pattern, or are there valid scenarios to build a service on top of SQL. Assuming you are building (amazon, google, twitter, etc) massive scale applications, in large engineering orgs.

For typical, design Reddit, Twitter, etc style interview questions. Would I lose a lot of points for over reliance on NoSQL solutions like DDB.

Background Information:

So for background i've mostly done front end the past 10 years, but past few years have been picking up some java back-end stuff at my current job. Currently studying for a full stack interview at a new company.

My experience is mostly with building on top of DynamoDB as a persistence layer. Mostly because this is the default mode of operation for every new service built on my current team.

Many system design advice videos im seeing suggest using relation database, especially if you have any sort of relation data.

Is this actually good advice? When properly designed, DDB tables have 10ms or less response times. Are way easier to scale horizontally. Data joins when required can be done in your business logic layer. Most of the system designs that use SQL, end up building cache layers in front of the DB anyway. Which feel like an operational pain to manage, and are not immediately necessary with a properly designed set of DDB table.

In big corps, most of the time you are reliant on data from other teams services anyway. So rarely can you just rely on a single SQL query to resolve your entire data result.

The only time in my career ive used Relation DBs, was when building monolithic Django MVPs for quickly launching an idea to a limited set of customers. For that purpose, I think they work really well.

🌐
KDnuggets
kdnuggets.com › 2018 › 08 › dynamodb-vs-cassandra.html
DynamoDB vs. Cassandra: from “no idea” to “it’s a no-brainer” - KDnuggets
August 23, 2018 - Apache Cassandra is an open-source database, while Amazon DynamoDB is a database service on the list of AWS’s offering. And it’s a common misconception that this is the biggest, if not the only, difference between the two technologies.
🌐
DEV Community
dev.to › imsushant12 › comparing-amazon-dynamodb-with-other-nosql-databases-mongodb-and-cassandra-1h16
Comparing Amazon DynamoDB with Other NoSQL Databases: MongoDB and Cassandra - DEV Community
January 27, 2025 - Amazon DynamoDB offers seamless integration with AWS and is perfect for serverless, real-time applications. MongoDB excels in flexibility and complex query capabilities, while Apache Cassandra shines in write-heavy, distributed environments.
🌐
Stack Overflow
stackoverflow.com › questions › 44198004 › cassandra-vs-dynamo-database-primary-keys-selection
amazon dynamodb - Cassandra Vs Dynamo database primary keys selection - Stack Overflow
I have used cassandra in past where it was advisable to keep data related to key on single node. Today I was studying dynamo database documentation and in this it was suggested to segregate data a...
🌐
StackShare
stackshare.io › stackups › amazon-dynamodb-vs-cassandra-vs-hbase
Amazon DynamoDB vs Cassandra vs HBase | What are the differences? | StackShare
Amazon DynamoDB is a document-oriented database wherein each item can have its own unique set of attributes. It provides flexibility in schema design and allows for easy scaling. Cassandra follows a column-oriented data model, with each row ...
🌐
Hello Interview
hellointerview.com › home › system design › key technologies › dynamodb
DynamoDB Deep Dive for System Design Interviews | Hello Interview System Design in a Hurry
February 15, 2026 - The moral of the story is that DynamoDB is a super easy to use and can scale to support a wide variety of applications. For system design interviews in particular, it has just about everything you'd ever need from a database. It even supports transactions now!
🌐
Intellipaat
intellipaat.com › home › blog › cassandra vs dynamodb – key differences
Cassandra vs Dynamodb - Key Differences & Comparison
October 9, 2025 - We hope that this blog helped you understand Cassandra and DynamoDB better, the two databases. Cassandra is the best choice if open source is in need. DynamoDB is advised if you plan to use AWS products frequently.