When multiple nodes accept writes, conflicts happen:
Last-Write-Wins (LWW):
- Timestamp determines winner
- Simple but loses data silently
- Clock skew causes problems
Version vectors:
- Track causal history of each value
- Detect concurrent updates
- Require application to merge
CRDTs (Conflict-free Replicated Data Types):
- Counters, sets, maps that merge deterministically
- No conflicts by design
- Limited data structure support
Application-level merge:
- Custom logic per data type
- Most flexible, most complex
Choose based on data semantics. Not all data can use LWW safely.