3. Multi-Master Replication
Some systems must operate when partitioned.
- Requires many updatable copies, not just one primary
- Conflicting updates on different copies are detected late
Classic example - salesperson’s disconnected laptop
Customer table (rarely updated) Orders table (insert mostly)
Customer log table (append only)
- So conflicting updates from different salespeople are rare
Use primary-copy algorithm, with multiple masters
- Each master exchanges updates (“gossips”) with other replicas when it reconnects to the network
- Conflicting updates require reconciliation (i.e. merging)
In Lotus Notes, Access, SQL Server, Oracle, …