Skip to main content

One definition, many representations

·1 min

Once you have a data contract defined you can represent it in as many different ways as you want.

That could include:

  • Protobuf, to configure a Kafka topic with a schema
  • JSONSchema, to create client libraries for data validation before it leaves the publishing service
  • Custom JSON or YAML to integrate with any number of tools and services such as data catalogs, cloud resources, and so on

Being both human and machine readable, the data contract is then the source of truth for everything about the data, and that truth is replicated as needed, usually by writing trivial code to transform it to a different format.

One day there could be a widely adopted open standard that replaces the need to create so many custom data structures.

Until then it will be common to to transform the data contract into many different representations.


Want great, practical advice on implementing data mesh, data products and data contracts?

In my weekly newsletter I share with you an original post and links to what's new and cool in the world of data mesh, data products, and data contracts.

I also include a little pun, because why not? 😅

Enter your best email here:

    (Don’t worry—I hate spam, too, and I’ll NEVER share your email address with anyone!)

    Andrew Jones
    Author
    Andrew Jones
    I build data platforms that reduce risk and drive revenue.