Code Lies, Data Speaks: Splitting a Monolith on Data, Not Code

https://hackernoon.imgix.net/images/data-workflow-abstract-xnyphuy197tjmijy59dplc0g.png

Breaking a monolith into microservices gets planned as a code and architecture problem. You draw the services on a board, you argue about where the boundaries go, you agree on an order of extraction, and almost the whole conversation happens in domain and code terms. The data tends to show up late in that conversation, usually as a line item called "migrate the data", as if it were the mechanical step at the end. In practice, it's the opposite: the data decides whether the whole thing ships, and by the time that becomes clear, it's already too expensive to move as the plan assumed.

This is true of almost any system that ran as one database for years before anyone tried to split it, and ours was a clear example. We had over 500 tables in a single database, some of them hundreds of columns wide, and one grew to...

Copyright of this story solely belongs to hackernoon.com. To see the full text click HERE

Read more