jargon

Comparison

Schema driftvsUpstream drift

Schema drift

the vendor added three columns and renamed one over the weekend, and nobody told anybody.

The source's structure changing without coordination — added, removed, renamed or retyped fields. It is distinct from planned schema evolution in exactly the way that matters: nobody agreed to it, so no compatibility rule was applied. Handling it means deciding in advance whether unknown fields are absorbed, ignored or fatal, and a pipeline that has never made that decision has made it implicitly by whichever the library defaults to.

Full entry →

Upstream drift

the source team changed a status code's meaning, the pipeline kept running, and your funnel report has been wrong since Tuesday.

The producing system changing behaviour — semantics, encoding, defaults, volume — without changing anything your pipeline validates. It is worse than a schema break precisely because nothing fails: the types still match and the numbers are merely wrong. The defences are semantic tests rather than structural ones, and a contract with the producer that says which changes require notice.

Full entry →

Related comparisons