How CockroachDB helped Spreedly migrate their data from chaos to consensus
summary
Spreedly migrates from an aging key‑value mess into CockroachDB, consolidating six systems into one logical datastore and removing three custom codebases and two auxiliary databases. The team uses a source-of-truth migration to separate migration from activation, lets CockroachDB manage IDs to avoid UUID hotspots, applies a read-through migration for bulky historical vault data, and enforces row-level TTLs plus changefeeds to keep retention, shrink legacy compute, and serve both transactional and analytics needs while accepting a first-touch latency trade-off.
AI-written summary · about
chapters (14)
- 0:00Intro: A tale of modernization in 3 lessons
- 0:31About Spreedly's flexible payment platform
- 0:55Payments orchestration vs Payments optimization
- 1:35What did Spreedly think their data needs were?
- 2:17What were Spreedly's actual data needs? (Application data, vaulted data, transaction data)
- 3:12How system level tech debt can accrue
- 4:35Why modernization is a responsibility, not a necessity
- 5:06Spreedly's architecture before CockroachDB
- 6:31With great power comes great on call rotations, operational costs, failovers, late nights, burnout...
- 7:25Lesson 1: De-risk the migration by taking it slow
- 9:28Lesson 2: Don't migrate data which you don't need to
- 11:40Lesson 3: Data is an ecosystem not a database
- 13:22Behind Spreedly's CockroachDB migration project
- 14:40Closing notes: Modernization is not a spectator sport
related talks
23mWhy Squarespace adopted CockroachDB for better global performance at scale
48mBuilding mission-critical applications with CockroachDB
15mJourney from PostgreSQL to CockroachDB: Scaling Cisco AI Defense
18mFrom Today to 10X: Why Groww chose
14mBuilding CockroachDB for performance at scale
31mFuture-proofing operational data at scale
15mScaling to support America’s #1 sportsbook
17mMigrating Primer’s Live Payments Platform to CockroachDB with Zero Downtime
