Such a great post. I'm so glad that Benn now has a Substack!! Here's the meat of it:
To extract metrics from these tables, people have two options: They can pull from pre-aggregated rollups, or they can compute new metrics on the fly from granular dimension tables.
Rollup tables are typically generated by transformation tools like dbt, so the metrics in these tables can be consistently defined and reliably governed. However, because rollup tables are precomputed, there’s a practical limit to how many can be created. As a result, they’re often only built for top-level metrics, like active users or customer NPS.
But self-serve analysis requires another level of depth—daily active users for a particular customer segment, or NPS for a particular type of user. Even with just a handful of metrics and segments, it’s all but impossible to precompute every possible combination.
The whole post is a goldmine. I am not entirely convicted that his proposed solution architecture is correct, but it is certainly compelling.
Another good read on this topic: Headless BI.Read more...