- 18×Median query speed-up
- 50M+Rows queried live
- 99.98%Uptime since launch
The challenge
Kestrel's customers were on the platform to answer questions about their own data, but the dashboard timed out on anything spanning more than a week. The interesting queries were exactly the ones that failed, so customers exported to spreadsheets instead — and stopped seeing the product's value.
What we did
- 01
Moved the analytical workload off the transactional database onto a column store built for it, with rollup tables for the common ranges.
- 02
Streamed results over WebSockets so charts paint progressively instead of blocking on a complete response.
- 03
Added query-shape caching in Redis, which absorbed the large majority of dashboard loads without touching the warehouse.
- 04
Instrumented every query path so slow shapes surface in monitoring before a customer reports them.
The outcome
Median query time fell from just over nine seconds to half a second. Dashboard sessions more than doubled in length, and export-to-spreadsheet usage dropped sharply.