Customer 360 Enterprise Data Platform — Denodo on Azure  ·  View 13 of 39  ·  Structure

Identity Resolution

How five source identifiers become one enterprise customer, and why none of it happens in a view.

Editable source SVG draw.io All views
Collect identifiers CRM ids CUST-1001 ERP ids 000045678 Support and marketing USER-9876 Device and web ids DEVICE-2345 Standardise Name and address parse libpostal Email and phone E.164, RFC 5322 Country reference Block and score Blocking keys cuts the pair space Deterministic rules tax id, email Zingg similarity Spark ML Decide Auto-merge score above 0.95 Steward review 0.80 to 0.95 Keep separate below 0.80 Master and publish Survivorship rules source precedence ECID assignment stable, never reused ECID Crosswalk source id retained Serve and notify Denodo join key iv_customer Merge event invalidates cache on approval on change Identity Resolution — How Five Source Ids Become One Enterprise Customer External / third party Application we own Data store Decision point Queue / topic synchronous event / async Denodo consumes the crosswalk; it does not produce it. Matching rules, thresholds and survivorship live in Git and run on Spark, where they can be tested against a labelled set. v 1.0 · owner Data & AI Global Practice · date 2026-09

Decisions

  • Deterministic rules first — tax id, verified email — then probabilistic scoring with Zingg on Spark for the remainder. Deterministic matches never go to a review queue.
  • Three outcomes, not two: auto-merge, steward review, keep separate. The middle band is where the accuracy actually comes from, and it needs a human and a queue.
  • Survivorship is source precedence per attribute, versioned in Git — Salesforce wins on name and segment, SAP on legal entity and billing address, ServiceNow on nothing.

Why not Denodo, and why not a commercial MDM yet

  • Not Denodo: matching needs state, training data and a review workflow that virtual views cannot hold.
  • Not Reltio or Informatica MDM on day one: the crosswalk plus survivorship rules covers the Customer 360 requirement at a fraction of the cost. The interface is deliberately a crosswalk table, so a commercial MDM can be substituted behind it without a single consumer changing.

Numbers

  • Nightly at 02:00 UTC over roughly 11 million source records; blocking reduces the candidate pair space by about four orders of magnitude.
  • Thresholds 0.95 and 0.80, tuned against a 4,000-pair labelled set; target precision above 0.99 on auto-merge.