Skip to main content

Choosing a Database Without Guessing

Updated 2 min readMarkdown

A few years ago our core jobs took 24 to 48 hours to run. Reports, scoring runs, the heavy work. By the time a job finished, the data had moved on.

I was the Chief Technology Officer (CTO) in the credit monitoring space, and the database decision was mine. This is how we made it. No guessing.

Step 1: Write down the real workload

Not the workload we wished we had. The real one: over 7 million queries a month, 10,000 clients, and credit data that could never sit in a cache. Credit data was pulled direct from the database every time, for compliance reasons. Any candidate that needed caching to survive was out.

Step 2: Trial the candidates honestly

We evaluated Snowflake directly and trialed Algolia, Elasticsearch, MySQL, and Meilisearch. Every one of them is good software. Most of them failed on fit: a new query dialect, a rewrite of working Laravel code, or a bill that grew faster than the value.

SingleStore fit. It spoke MySQL, it worked with Laravel, and it held the analytical and transactional load in one system.

Step 3: Simulate before you commit

We built fuzzed simulations with fake data at production volume and ran the real queries against them. Trust but verify is my whole career. A vendor demo is a story. A simulation is evidence.

Step 4: Cut over with zero downtime

We queued incoming requests, swapped the database underneath, then replayed the queue. Nothing dropped. Nobody outside the team noticed a thing.

The result

Jobs that took 24 to 48 hours finished in 15 minutes. Throughput went from 60 to 1,000 requests per minute. Same team. Same code, mostly. Just the right database under it.

Simulate first. Cut over once.

About the author

  • Guy Warner is a Salt Lake City software engineer with 20+ years building PHP/MySQL/AWS SaaS products, with 10+ years of Laravel in production. He was Chief Technology Officer (CTO) and VP of Development at Monitorbase in credit monitoring, handling 7M+ monthly queries, where he led 12+ developers and migrated to SingleStore. He founded Eco Moving Utah, a moving tote rental business, and builds Bin X, rental business software. He has a B.S. in Political Science, University of Utah.

No comments yet. Be the first to comment.

More from this blog