User Identifier Matching and Merge for Accurate Contact Queries

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Cloud platforms face inefficiencies and inaccuracies due to multiple data objects with conflicting field values for a single contact, leading to ambiguous and inefficient query results in multi-tenant database systems.

Innovation Solution

A match and merge process is implemented to identify data objects with matching field values, generate a unified profile, and store it in both relational and non-relational datastores, using match and reconciliation rules to select field values and create mappings for efficient querying.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If multiple data objects are stored for a single contact from different data sources, then data completeness is improved, but query accuracy and reliability deteriorate due to conflicting field values

Engineering Contradiction:
Improvedata completenessVSAvoidquery accuracy
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent applies merging by combining multiple data objects representing the same contact into a single unified data object. The system identifies data objects associated with the same contact across different data sources and merges their field values, using reconciliation rules to resolve conflicts and select the most accurate values, thereby maintaining data completeness while eliminating redundancy and improving query reliability

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent uses an intermediary matching and merging process as a mediator between raw data objects and query results. This intermediary process applies matching rules to identify related data objects and reconciliation rules to select field values, acting as a buffer that transforms multiple conflicting data sources into a single reliable data object before queries are executed

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If data objects from multiple data sources are ingested without processing, then data ingestion speed is improved, but data accuracy and consistency worsen due to conflicting field values

Engineering Contradiction:
Improvedata ingestion speedVSAvoiddata accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent applies preliminary action by performing matching and merging operations proactively during data ingestion rather than waiting for queries. The system pre-identifies data objects associated with the same contact and pre-resolves field value conflicts using reconciliation rules, so that when queries are executed, the data is already consolidated and accurate, maintaining both high ingestion speed and data accuracy

Inventive Principle:
Principle #10Preliminary action

3Quantity of substance

If queries are executed on multiple conflicting data objects, then data coverage is improved, but query performance and response time deteriorate

Engineering Contradiction:
Improvedata coverageVSAvoidquery response time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent applies merging by consolidating multiple data objects into a single unified data object before queries are executed. This eliminates the need for queries to process multiple conflicting data objects separately, reducing computational overhead and query response time while maintaining complete data coverage through the merging process that preserves all relevant field values

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS12579169B2User identifier match and merge process
Publication Date: 2026.03.17 SALESFORCE INC
  • US12579169B2 patent drawing
  • US12579169B2 patent drawing
  • US12579169B2 patent drawing

AI summary

A method that includes receiving a first configuration and a second configuration that define a set of rules for matching and merging a set of source data objects that are associated with a tenant and that are received from a plurality of data sources. The method may further include generating a set of merged data objects from the set of source data objects based on an identification of matching values from fields of the set of source data objects and selecting a value for each field of each merged data object having multiple values. The method may further include generating a mapping between primary keys associated with each merged data object and corresponding primary keys of the source data objects. The method may further include storing the merged data objects and the mappings in a first datastore and a second datastore that is different from the first datastore.