Help families in GazaDonate to the IRC to provide humanitarian aid and resettlement resources to families in Gaza
JT's Space
Articles
About
Journal
RaW
GitHub
Articles
About
Journal
RaW
GitHub

Tuesday November 18, 2025

JT Houk
Published November 18, 2025
performanceinfrastructure

Projects

Production performance for the Cash Movement Report was unacceptable. It took around 10 seconds to load for a retailer with only about 10 rows of data, and the issue didn't appear related to notes search. Dania also noticed phantom zero-value rows rendering on first load before the real data appeared.

Spent the day profiling and optimizing the BigQuery queries. I added the retailer hash to the query so it can leverage retailer-based partitioning, pushed date filtering earlier in the query to reduce the working data set, and implemented an aggregate-optimized query path.

Performance Results

MetricBeforeAfterImprovement
Elapsed Time9 sec752ms12x faster
Slot Time2hr 7min51 sec~150x reduction
Rows Scanned96M71K99.9% reduction