Metric Definitions and the Semantic Layer
Revenue disagreements can arise from definitions, SQL, or different input versions. Trace the population, time basis, calculation, and published result.
Revenue disagreements can arise from definitions, SQL, or different input versions. Trace the population, time basis, calculation, and published result.
A new definition can change a historical query while an old report stays fixed. Preserve the versions and decide which figures to restate.
The same filter copied into seventeen dashboards is seventeen definitions. A semantic layer exists so there is one.
Shipping application code changes behavior; shipping transformation code changes history too. What that asks of models, tests, documentation, and deployment.
One question, “what was March revenue?”, can honestly return 600, 550, or 100 from the same seven orders. This post shows how metric contracts, aggregation rules, time-window rules, versions, and consumer tests make one answer.