liveBook · Manning

Data contract

As explained in Architecture Modernization: Socio-technical alignment of software, strategy, and structure

A data contract is a formal specification of the expectations, structure, quality, governance, service levels, and access conditions for data exchanged between producers and consumers.

Data becomes difficult to use when teams spend most of their time discovering, preparing, and maintaining fragile pipelines. A data contract establishes shared expectations between producers and consumers and gives a data product a dependable operational boundary. section 14.0 section 14.3.3

A data contract is the shared language connecting the internal components of a data product, or data quantum. The data product owner owns it, while engineers, scientists, curators, stewards, and automation can contribute. section 14.3.3

A practical contract can specify:

  • Names, versions, descriptions, and links that identify and explain the data product. section 14.3.3
  • Logical and physical schemas, including the relationship between them. section 14.3.3
  • Data-quality rules, governance policies, service-level agreements, security roles, and stakeholders. section 14.3.3
  • Custom attributes that allow the contract to expand as requirements evolve. section 14.3.3

A contract as a reusable operating agreement

PayPal released an internal data-contract template as an open-source YAML file. More broadly, a contract can configure a sidecar containing reusable services for onboarding, monitoring, observability, notification, and other product behaviors. section 14.3.3 section 14.3.4

Figure 14.8 The data contract is a rich document defining the internal and external behavior of the data product.

Use the figure to view the contract as a rich document governing both the internal and external behavior of a data product. section 14.3.3

Define the contract alongside data onboarding and the model, then use it as configuration for reusable components. This keeps behavior consistent across products without prescribing one physical infrastructure. section 14.3.4

How Architecture Modernization: Socio-technical alignment of software, strategy, and structure covers it

How deep it goes
Defines contract contents, ownership, responsibilities, and configuration use, while leaving physical architecture dependent on existing infrastructure.
Examples
Uses PayPal’s open-source YAML template and sidecars configured for onboarding, monitoring, observability, and notification.
What it assumes
Assumes data products and data quanta while defining producer-consumer expectations, ownership, schemas, quality, governance, and access.
What you can do after
Operate/configure reusable data-product components consistently by treating the contract as their shared configuration and behavioral boundary.
How it connects
Connects data mesh, data products, data quanta, schemas, governance, service-level agreements, and the sidecar pattern.

Also explained in

Compare how 4 books explain data contract →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Architecture Modernization: Socio-technical alignment of software, strategy, and structure. The section links point to the parts of the book it draws on.