We have finally found a way to properly scale JOINs, with insane performance at multi-billion row scale, for our new analytics model. It's…
Thread by Jack Ellis@JackEllis · Sep 28, 2025 · 3 posts · 148 words · 1 min read
We have finally found a way to properly scale JOINs, with insane performance at multi-billion row scale, for our new analytics model. It's a huge moat for us as a company and required a genius database consultant to get us there. It was a lot of pain (seriously) but so worth it.
You know why a lot of analytics companies have maximum data rentention periods? Because the more data they have to analyze, the harder it is to do fast. So they chicken out and delete historical data. It's a super lame solution and it allows you to avoid the hard work of scaling.
You, the reader, instinctively want to ask "Have you tried X". Yeah, I've tried everything. This problem exists in all OLAP databases and you solve it via creative structuring specific to your application's structure. So yeah, your important, historical data will not be deleted.
Jack Ellis answered 4 questions
under this thread · top answer 6 likes
@dubaplex askedMost liked
Well I'm glad for fathom. I wonder what features you can add that competitors can't replicate without fast joins (besides keeping historical data).
@tplaner asked
Curious about the approach, did you actually find a way to keep the joins performant at query-time, or is this more along the lines of flattening / building rollups & aggregates (similar to how YouTube handles view counts)? I’m a bit skeptical since most systems solve it the latter way.
@tplaner asked
Very cool that you got this working. I’m curious why go that route though. Architecturally, pushing multi-billion row joins to query-time usually isn’t the best approach. For most analytics, rollups/aggregates are faster and more pragmatic. What’s the actual gain here?
@gridpane asked
Is said genius DBA available for work or did you chain them to a radiator forevermore?
