# Data Mesh

> Decentralized domain-oriented data architecture treating data as a product.

- **Category**: Data Science
- **Subcategory**: Architecture
- **Canonical URL**: https://designpattern.fyi/patterns/data-mesh/

---

## Description
**Context**: Traditional centralized data platforms struggle to scale with organizational growth. Data mesh distributes data ownership to domain teams who provide data as products.


## Use Cases
Large organizations with multiple domains where teams need autonomy over their data while maintaining cross-domain interoperability.



## Implementation Example

```python
# Data Mesh Concept class DataProduct: def __init__(self, domain, owner): self.domain = domain self.owner = owner self.consumers = []
def register_consumer(self, consumer): self.consumers.append(consumer)
# Domain teams own their data products sales_data = DataProduct("sales", "sales_team") marketing_data = DataProduct("marketing", "marketing_team")
```



## Trade-offs


### Advantages

- - Scalable across domains

- - Reduces bottleneck of centralized teams

- - Domain-specific expertise applied to data

- - Faster time-to-value for data products




### Considerations & Drawbacks

- - Requires organizational change

- - Coordination overhead

- - Standardization challenges

- - Discovery and governance complexity







---
**Reference**: [Original Source](https://martinfowler.com/tags/data%20mesh.html)

