MongoDB vs Cassandra at scale: Discord's switch and Stripe's path
Published 2026-10-19 · Built only from first-party engineering write-ups in our database. Every number below comes from the linked source.
Discord is the direct comparison: its 2017 post explains outgrowing MongoDB and moving messages to Cassandra with a partition key of channel plus time bucket, at billions of messages and 120 million messages a day. Stripe shows the other path: it stayed on document databases (MongoDB, then its own DocDB) and invested in zero-downtime migrations between shards, citing 1.5 PB and 99.999% uptime.
MongoDB vs Cassandra: side by side
| MongoDB | Cassandra | |
|---|---|---|
| Stories in our database | 3 | 3 |
| Companies | Discord and Stripe | Discord and Netflix |
| Published | 2017–2024 | 2017–2026 |
| Techniques alongside it | data modeling (1), database migration (1), dual writes (1), online migration (1) | database migration (2), backups as cold tier (1), compaction (1), cost optimization (1) |
| Scale numbers stated in sources | 1.5 PB (Stripe); billions of messages (Discord) | 15+ PB compressed data in cold storage (Netflix); trillions of messages (Discord); billions of messages (Discord) |
| Direct comparison story | Discord: How Discord Stores Billions of Messages | (same story) |
Verdict
Discord's move came down to modeling messages as partitions of channel plus time bucket. Stripe kept documents and built tooling to move them between shards. Choose based on how your data is read, not on the brand.
Counts are stories in How They Scaled tagged with each side, see the MongoDB and Cassandra pages. They describe what these teams wrote about, not market share or benchmark results.