Anonymous Asked in Cars &Transportation · 2 weeks ago

Is shared database an anti-pattern?

A shared database is still an anti-pattern, no matter what the justification. Linking systems and processes together through a shared database might seem inviting at first. It makes it easy to synchronise data between applications and it utilises technology that everybody can understand. 22 февр. 2013 г.


Why shared database is a anti-pattern?

Why a shared database is considered an anti-pattern in the microservice architecture. Data sovereignty is a rule that states that each microservice owns its domain data and logic. Other microservices that wanted to access or modify that data, will need to pass for the microservice itself for doing it.

What is a shared database?

The shared database paradigm is a common development workflow where all developers on a team share access to one database that they all use to support application development. This workflow is usually adopted because it's easy. There is no need to provision infrastructure for each engineer, so setup costs are minimal.

Why microservices should not share database?

Microservices with shared databases can't easily scale. Changes related to the database could impact multiple services. Besides, microservices won't be independent in terms of development and deployment as they connect to and operate on the same database.

Is it a good idea for microservices to share a common database?

I've seen folks refer to this idea in part, trivially, as “each microservice should own and control its own database and no two services should share a database.” The idea is sound: don't share a single database across services because then you run into conflicts like competing read/write patterns, data-model conflicts ...

Related Questions

Relevance
Write us your question, the answer will be received in 24 hours