Our engine never sees your warehouse password
datahashi

Blog

Notes on governed metrics

How we model, query and secure the numbers that dashboards and AI agents share. From the people building datahashi.

Querying

Filters that compose safely

Two filters interacting should narrow a result, not rewrite the metric. How datahashi treats filter composition as a first-class part of every semantic query.
Querying

How semantic queries become SQL

A semantic query names metrics and dimensions; the warehouse still speaks SQL. Here's how datahashi compiles one into SQL you can inspect and trust.
Querying

Semantic Query 101: metrics × dimensions × filters

Introduce the semantic query triad so any consumer can ask the same question the same way.
Modeling & metrics

Derived metrics without double counting

Derived metrics compose other metrics, not raw columns — get the expansion order wrong and a ratio silently double-counts. Here's how datahashi keeps composition honest.
Modeling & metrics

Entities and relationships in the semantic model

Metrics sit on entities. Relationships tell the layer how to join without letting every consumer reinvent the graph.
Modeling & metrics

Time grains and asymmetric aggregates

Time grain is part of the metric contract. Some aggregates roll cleanly across grains. Others do not, and agents need to know the difference.
Modeling & metrics

Additive vs non-additive metrics

Why some metrics can be summed across dimensions and time, and why others must never be.
Modeling & metrics

Fan-out-safe metrics explained

What fan-out risk looks like in metric queries and how to keep aggregates correct.
Modeling & metrics

Dimensions that do not explode joins

How to model dimensions so metric grain stays correct and joins do not multiply rows.
Modeling & metrics

Your first metric: name it, do not hand-write SQL

Walk through defining a first certified metric by name and measure without pasting hand-written SQL into the agent path.
Strategy & comparisons

Thin layer, thick warehouse: what not to copy

What belongs in your warehouse versus your semantic layer, and why copying logic into both creates drift.
Governance & trust

Metric contracts: the same-number test

A metric contract is a shared definition you can test. If two consumers disagree on the number, the contract failed.