Topic
Great Expectations
2 entries filed under this topic
The pipeline half, part 2 — OpenLineage, Great Expectations, and the evidence a pipeline emits
Part 1 covered what a pipeline reads. This part covers what it emits, and why that is the whole governance story: OpenLineage as the vendor-neutral lineage backbone, the AWS-native adoption playbook via DataZone's PostLineageEvent API, assertion results as a data-quality facet a grant can be suspended on, and the provenance facet that answers the auditor's 'which code produced this number'. Plus why the scheduler stays central while compute decentralises, and the one hop this architecture cannot see. Real payloads and real emitter config throughout.
The pipeline half, part 1 — a pipeline is a descriptor, not a program
Metadata-first is usually read as an emission story — lineage and quality events coming out of a pipeline. That is half of it. This post walks the other half: the schemas, descriptors, contracts, expectation suites, and policy metadata a pipeline reads on the way in, and the one generic executor that interprets them instead of a DAG per pipeline. Real descriptor YAML, a complete Python executor, the six rules for defining a descriptor schema, and honest limits on where the abstraction stops working.