The benefits of duplicating data are as follows:
- Helps decouple the service boundaries
- A business event containing the data is the only relationship between the services
- Helps avoid expensive distributed transaction models across boundaries
- Allows us to make changes to our service boundaries without impeding progress of other parts of the system
- We can decide how quickly or slowly we want to see the rest of the outside world and eventually become consistent
- Ability to store the data in our own databases using the technology appropriate for our service model
- Flexibility to make changes to our schema/databases
- Allows us to become much more scalable, fault tolerant, and flexible