BI Governance
Advanced 13 min read BI Governance

Metadata-Driven BI

BI's nervous system, made machine-readable

Metadata is BI's nervous system: catalogs, definitions, lineage, metrics and usage — machine-readable, curatable, and driving discovery, reconciliation and reuse instead of tribal knowledge.

metadatacataloglineagedefinitionsusagediscoverysemantic
Prerequisites: Data Contracts
Before we start

What you will learn

  • Compose active metadata: catalog, lineage, definitions, usage
  • Enable discovery and reconciliation from metadata alone
  • Keep metadata curated, not just collected
Introduction

What is this?

Metadata-driven BI treats descriptions as a first-class asset: a working catalog where every table, report, metric and field carries definitions, lineage, owners, and usage counts — stored as data itself. Discovery runs on it (search 'net revenue' finds the one certified metric), reconciliation reads it (drift checks line against the lineage graph), and reuse compounds because field semantics travel with the data. The enemy is metadata that's collected but never curated.

Motivation

Why do you need it?

  • Tribal knowledge dies with the person who leaves the team.
  • Discovery search surfaces the certified metric, not twelve look-alikes.
  • Lineage turns a metric shift into a walkable ancestor graph.
  • Metadata quality is what separates a catalog from a dump.
Think about it

Mental model

Imagine

A library's card catalog vs the shelves of miscellany

Think of

Curated metadata

Libraries trust the catalog: the card tells you what's on the shelf, who wrote it, and its shelfmark — and out-of-date cards (stale metadata) are a minefield. Data catalogs are the same: findable, owner-stamped, lineage-linked entries that must be maintained, or the shelves may as well be a dump.

Mechanics

How it works

  • Collections: ingest table/report/field metadata automatically where possible.
  • Definitions: certified semantics attached to the metric layer end of lineage.
  • Lineage: edges recorded — model → metric → report — walked on demand.
  • Usage: view/query counts feed discovery ranking and retirement.
  • Curation: owner-stamped descriptions, freshness of the catalog itself tested.

Metadata flowing from production to reuse.

Ingest
Define
Lineage
Discover
Curate
Hands-on

Examples

The catalog row that does work

The catalog row that does work
FIELD net_revenue
DEF certified semantic layer metric; formula F1 (net excl. tax)
OWNER finance-analytics
LINEAGE source.orders -> model.marts -> metric.net_revenue
-> report.qbr-one-pager
USAGE 412 views/30d (rank #3)
RECON drift check walks lineage; a redefinition on
model.marts flags ALL downstream artifacts
SEARCH 'net revenue' returns exactly this metric first
CATALOG FRESHNESS 46/49 entries reviewed <90 days

One field row powers search, lineage, reconciliation and retirement — metadata earning its keep as data.

Real world

In production

  • A search that returns the certified 'net revenue' first instead of twelve renamed twins.
  • A redefinition on the mart triggers a drift walk to every downstream report.
  • Usage ranking retires the 200-views-of-nothing tables politely.
Guidelines

Best practices

  • Collect automatically, curate by ownership.
  • Attach semantics at the metric layer so definitions travel with lineage.
  • Test catalog freshness like pipeline freshness.
  • Make discovery rank certified + used over the long tail.
Watch out

Common mistakes

  • A catalog that's a database dump with zero curation.
  • Lineage as a static PDF — unfindable the moment things move.
  • Definitions duplicated per report instead of traveling from the semantic layer.
  • Metadata no one refreshes — 'catalog' becomes lore with timestamps.
When things break

Debugging tips

  • Search names never find the real metric → certified semantics not attached to discovered fields; fix the metric-layer links.
  • Redefinition missed downstream reports → lineage graph incomplete; walk and repair edges.
  • Catalog grows stale → no curation cadence; make it a reviewed number, not an event.
Interviews

Interview checkpoint

Test yourself

Quick quiz

0/2
1

Working metadata is distinguished by:

2

Catalog freshness should be tested like pipeline freshness.

Go deeper

Official documentation