Data Lineage Capture¶
Lineage capture tool — instantiates Data Integrity Preservation
Records how each value moved through sources, transformations, joins, and derivations, so a suspect output can be traced back to the upstream step that produced it.
Data Lineage Capture preserves the travel history of a value. As data flows from raw sources through cleaning, joins, aggregations, and derivations into a final output, this mechanism records the path — which sources fed a field, which transformations touched it, which upstream tables a report column depends on. Its distinguishing job is traceability of derivation: when a downstream number looks wrong, lineage lets you walk backward to the exact step that produced it, rather than staring at a final figure with no idea which of a hundred upstream inputs went bad. It does not judge correctness or fix anything; it supplies the map that makes an integrity problem localizable instead of a whole-pipeline mystery.
Example¶
A bank's quarterly regulatory report shows a capital ratio that supervisors question. Somewhere across a dozen source systems, a warehouse, and layers of transformation, one figure is off — but which? With lineage capture, the reporting team clicks the suspect number and follows its recorded derivation: it is computed from a risk-weighted-assets column, which is joined from a positions table, which was loaded from a trading system feed that, the lineage shows, was reprocessed after a late correction — and the reprocessing ran after the report snapshot. The lineage graph localizes the fault to one upstream load timing in minutes, not the days a blind hunt across systems would cost. The report is corrected at the source, and the same lineage documents, for the regulator, exactly where each figure came from.[1]
How it works¶
The mechanism instruments the boundaries between processing steps, recording at each hop the inputs, the transformation applied, and the outputs, so the full graph from source to output can be reconstructed. Distinctively, it captures derivation structure — the dependency edges between datasets and fields — rather than the change events on a single record; its unit is the flow of a value across systems, not the actions of an actor. Lineage can be captured coarsely (dataset-to-dataset) or finely (column-to-column), and it turns two hard questions into lookups: impact analysis ("if this source is wrong, what downstream is affected?") and root-cause tracing ("this output is wrong; what upstream produced it?").
Tuning parameters¶
- Granularity — dataset-level versus column- or field-level lineage. Fine lineage pinpoints exactly which input tainted an output but costs far more to capture and store.
- Capture method — parsed automatically from pipeline code and queries, or declared by hand. Automatic capture stays honest as pipelines change; manual lineage drifts from reality the moment someone edits a transform without updating the map.
- Transformation detail — whether each step records just "A fed B" or the actual logic applied. Richer detail explains how a value was derived, not only that it was, at the cost of heavier capture.
- Retention and depth — how many hops back and how far in time the lineage is kept, trading investigative reach against volume.
When it helps, and when it misleads¶
Its strength is turning root-cause tracing and impact analysis from expensive investigations into graph lookups, which is what makes errors in complex pipelines fixable at the source rather than patched at the surface. It is also the backbone of provenance for audit and regulatory contexts, where "where did this figure come from?" must have a defensible answer. Its failure mode is drift: hand-maintained lineage silently diverges from the real pipeline and becomes confidently wrong, which is worse than none. It can also lull teams into thinking documented flow equals correct flow — lineage shows the path a value took, not whether the transformations along it were right. The classic misuse is treating a lineage diagram as proof of quality. The discipline that guards against this is capturing lineage automatically from the actual code and queries, and pairing it with validation that checks the values, not just their routes.
How it implements the components¶
provenance_record— its core output: the recorded origin-and-transformation history of a value, showing where it came from and how it was derived.record_lifecycle_boundary— it maps the transformation boundaries data crosses — sources, joins, derivations, outputs — which is exactly where errors are introduced and must be traced.
It does not record actor-level change events for accountability (that is Audit Log), check whether the values it traces are valid (that is Data Validation Schema), or repair the upstream fault it helps locate (that is Reconciliation Workflow).
Related¶
- Instantiates: Data Integrity Preservation — it supplies the provenance map that makes downstream integrity failures traceable to their upstream cause.
- Sibling mechanisms: Audit Log · Integrity Anomaly Monitoring · Data Validation Schema · Reconciliation Workflow · Checksum or Hash Validation · Referential Integrity Constraint · Transactional Write Control · Access Control Enforcement · Backup and Restore Verification · Source-of-Truth Registry
Notes¶
Lineage (this mechanism) and the Audit Log are complementary provenance views: lineage records how a value was derived across transformations; the audit log records who acted on a record and when. Tracing a suspect figure usually needs both — the derivation path to find the responsible step, and the change history to find the responsible actor.
References¶
[1] Data provenance is the documented record of a value's origins and the transformations applied to it. In regulated reporting it is often mandatory precisely because a figure is only defensible if the path that produced it can be reconstructed and shown. ↩