Andrew Jones
Aug 13, 2024

--

With data contracts you're no longer using the upstream database as the source of your data - you're using a decoupled, higher level interface.

It's just like an API.

Take for example the Shopify API. People build businesses on top of it, and can do so with confidence, because it's a stable interface to build upon. Behind the scenes Shopify is changing all the time, but that does not break everything downstream.

That's a public example, but internally software teams always build APIs between their services. They would never go direct to the database, because how could you build something with confidence on top of someone's database?

If we're building something of value with data, something that needs to be stable, then we can't build on top of the upstream database - which is effectively what you are doing if you use CDC.

--

--

Andrew Jones
Andrew Jones

Written by Andrew Jones

Principal Engineer. Instructor. Writer. Created data contracts and wrote the book on it.

Responses (1)