O'Reilly logo
live online training icon Live Online training

Microservices Data Decomposition

Patterns for breaking apart and working with data in a microservice world

Topic: System Administration
Sam Newman

Most people understand that microservices work best when you don’t share databases, but actually dealing with the challenges you encounter while making this happen is much more difficult.

Expert Sam Newman walks you through one of the trickiest parts of building microservices: how to structure your data to achieve the best performance in a microservices architecture. You’ll explore the problems associated with extracting data from existing systems to create new decoupled data stores. From distributed transactions to referential integrity, reporting requirements, and caching concerns, you’ll gain a host of practical tips, plus solutions for tasks like reporting, where large volumes of data often need to be brought back together.

What you'll learn-and how you can apply it

By the end of this live online course, you’ll understand:

  • The tools to use when making incremental changes to databases
  • How to think about data ownership in a microservice world
  • Techniques to deal with referential integrity and caching

And you’ll be able to:

  • Use a variety of migration patterns in different contexts to make adopting microservices easier
  • See your data less as a static, nonchanging entity and more as something you must continuously change to make sure it’s fit for its purpose

This training course is for you because...

  • You're currently struggling with a large monolithic system.
  • You have a large database and are looking to refactor it safely.
  • You want to incrementally migrate to a microservice architecture.


  • A basic understanding of microservices, equivalent to Microservice Fundamentals (live online training course with Sam Newman)

Recommended preparation:

Recommended follow-up:

About your instructor

  • After spending time at multiple startups and 12 years at ThoughtWorks, Sam Newman is now an independent consultant. Specializing in microservices, cloud, and continuous delivery, Sam helps clients deliver software faster and more reliably through training and consulting. Sam is an experienced speaker who has given talks at conferences across the world and is the author of Building Microservices and Monolith to Microservices, both from O'Reilly.


The timeframes are only estimates and may vary according to how the class is progressing

Data in a microservices world (why we need separate databases)

Relational databases versus NoSQL

Tools for managing changes in databases

Changing data ownership

Working with reference data

Database views

Breaking foreign key relationships—foreign keys in microservices; referential integrity; the implications of caching

Reporting—batch/ETL-based systems; streaming; managing two sources of truth (the tracer write pattern)