Discord migrated from Apache Cassandra to ScyllaDB to handle trillions of messages more efficiently. The original Cassandra setup suffered from hot partitions, garbage collection issues, and operational overhead requiring 177 nodes. ScyllaDB's C++ implementation eliminated GC problems and reduced the cluster to 72 nodes while improving performance. Discord also built Rust-based data services with request coalescing to reduce database load. A custom Rust migrator achieved 3.2 million messages per second, completing the migration in 9 days. The new system delivered consistent 15ms p99 read latency and 5ms insert latency, proving its stability during high-traffic events like the 2022 FIFA World Cup Final.
Table of contents
MCP Authorization in 5 Easy OAuth Specs (Sponsored)Go from Engineering to AI Product Leadership (Sponsored)Initial ArchitectureSwitching to ScyllaDBRust-Based Data Services LayerMigration StrategyPost-Migration ResultsConclusionSPONSOR USSort: