Skip to main content

Migrating to a new data contract version

·1 min

Data evolves over time, and as such a data contract needs to support that. We do that by ensuring each data contract has a version.

When it comes to creating a new version, the data producer should be looking to provide a migration path.

What this looks like depends on the size of the change and the criticality of the data. It could range from some documentation, to tools and libraries to aid the migration.

As part of the migration, we may decide to have data produced for both the old version and the new for some time. This allows data consumers to move away from the old version without causing any downtime for their users or customers.

Again, the length of this dual writing depends on the size of the migration, the criticality of the data, and so on.

A migration of a data contract to a new version is really no different to a migration of any interface to a new version, so we can learn by looking at how API migrations are managed, how popular open source libraries manage migrations, and any change management process you may already have in your organisation.

Daily data contracts tips

Get tips like this in your inbox, every day!

Give me a minute or two a day and I’ll show you how to transform your organisations data with data contracts.

    (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. Guaranteed, with data contracts.