Patterns · Data Management
Patterns to handle queries, transactions, and data consistency across distributed services. These address the core challenge of microservices: each service owns its data, so cross-service operations require dedicated patterns.
Each microservice owns and manages its private database. No other service can access it directly — only through the service's API. The foundational data pattern for microservices.
Separates command (write) and query (read) responsibilities into different models and databases. Enables efficient reads across multiple services without in-memory joins.
Maintains data consistency across multiple microservices without distributed transactions, using a sequence of local transactions coordinated through messages or events.
Persists the state of a business entity as a sequence of state-changing events rather than the current state. Enables full audit trail and temporal queries.