I got a request today from a customer to look into the conflict resolution and detection (CDR) configuration. This lets me spend some time reviewing my blog on the CDR. In summary, there are two typical strategies when implementing CDR:
- Master-master with Conflict Detection and Resolution (CDR): both databases are treated equally. The conflict detection can be based on the record's primary key(s). You then use the built-in or custom-built functions in Oracle GoldenGate to resolve the conflicts. You might need some additional column(s) such as the data committed timestamp to resolve the conflicts.
- Master-slave with Overwrite: there is a master-slave relationship between the two databases. You always use the value on the master to overwrite the value on the slave node.