Data-Driven Migration

Written by

in

Description

You migrate from a monolithic application to a microservices architecture and try to migrate both service functionality and the corresponding data together.

Context

Derived from: “Data-Driven Migration”
Because it is difficult to get the granularity of each service right the first time, you may be frequently merging or splitting your services. Ideally, you want to migrate the data for each service only once, because data migrations are complex and error-prone much more than functionality migrations.

Cause

Trying to split the data for each service right the first time.

Consequences

Additional efforts for data migration, because you will need several iterations to get it right.

Solution

First, migrate the functionality of each service and worry about bounded contexts between services and data later. Once you learn more about the services, you will likely adjust the level of granularity through merging and splitting. After reaching a stable level of service granularity, migrate the data.

Tags

microservices, application, technology, migration, data management

All smells