The fidelity ladder
Which detection methods exist, and what does each rung down give up?
There are several ways to detect a change. Imagine them as a ladder. Each rung down is cheaper and less coupled to the source, and loses a nameable class of change. Nothing recovers a class of change that the source never recorded.
| Method | Cost to source | What it can miss |
|---|---|---|
| Log-based CDC | log volume, retention coupling | writes that bypass the log (rare) |
| Trigger-based CDC | write latency on every statement | writes that bypass triggers; bulk loads |
| Query/diff-based CDC (polling) | almost nothing | hard deletes, intermediate states, writes without a timestamp |
| Watermark-partition (append-only data) | nothing | late data in a partition already processed, restatements of old partitions |
| Snapshot diff (table format) | nothing: metadata only | which rows changed inside a rewritten file; history the cleaner has expired |
| Outbox (the writer announces it) | one more row per event, written in your transaction | writes that do not go through the code that fills the outbox |