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