Customer 360 Enterprise Data Platform — Denodo on Azure · View 27 of 39 · Runtime
Decisions
- The merge event is the invalidation signal. Caches that joined to either enterprise id drop the affected rows rather than waiting for a TTL.
- Nothing is deleted. Both source identifiers survive and the losing enterprise id is tombstoned, so a wrong merge is reversible and reconciliation remains possible.
- Summaries are flagged rather than rebuilt immediately; a nightly rebuild is enough for aggregate reporting and avoids a rebuild storm on a busy merge day.
The residual risk, drawn in red
- At-least-once delivery means the listener can miss an event during a restart. The hourly reconciliation job is what closes that gap and the 24-hour cache TTL bounds it absolutely.
- Target is consistency within one hour; the guarantee is within 24 hours. Both numbers are published, because a consumer that thinks it has the first when it has the second will be wrong at the worst moment.
Numbers
- Roughly 40 merges a day. First query after invalidation is a cold read at about 2.6 s against a 1.9 s warm baseline.