Customer 360 Enterprise Data Platform — Denodo on Azure  ·  View 27 of 39  ·  Runtime

A Merge Propagates

From a steward's approval to every consumer agreeing, and what happens if the notification is missed.

Editable source SVG draw.io All views
Approved Steward approves two records, one person Crosswalk changes Losing id tombstoned never reused Both source ids kept traceability Survivorship applied attribute precedence Notify Merge event published Event Hubs topic Invalidate Cache listener VDP stored procedure Affected rows dropped both enterprise ids Summaries flagged rebuild on next run Rebuild Next query repopulates cold read, 2.6 s Nightly summary rebuild 03:30 Verified Reconciliation check hourly Consistent within 1 hour at-least-once listener down, stale to TTL A Merge Propagates — From Steward Approval to Every Consumer Application we own Data store Queue / topic Opportunity event / async failure / alternate The red path is the residual risk: if the listener misses an event, the reconciliation job is what closes the gap, and the cache TTL bounds it at 24 hours. v 1.0 · owner Data & AI Global Practice · date 2026-09

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.