Promoting Data
This topic explains how the Promotion process works in Oracle Unity. Promotion is the third step in the Identity Resolution Pipeline Job to create master entities.
In this topic:
Introduction
Most of your customers have multiple online accounts and profiles, and each one might be filled in a little bit differently. Therefore, your ingested data likely includes conflicting data sets (sets of data with different values).
The Promotion process in Oracle Unity that runs during the Identity resolution pipeline job (ID Resolution job) is responsible for ranking conflicting sets of data, and promoting only the one that is the highest fidelity. It does this by running one or more promotion rules.
Promotion Rules
Your Unity instance comes with out-of-the-box Promotion Rules that are designed to achieve good results. We recommend examining the results before modifying them or creating new ones.
Looking at the JSON for a Promotion Rule, you'll notice the following parameters:
-
The
outputAttributes
parameter declares all the data attributes the rule will promote -
The
configs
parameter is an array that contains a series of operations. Each operation weighs the fidelity of each data record according to criteria you specify. Individualconfigs
are run in the order you prescribe using theorder
parameter.If the outcome of the first config is a tie, then the second config is run. If the second config ends in a tie, the next config is run. And so on, until only one data record is determined the winner. That instance of data is the one that gets promoted to the master entity. Therefore, the order in the configs parameter is critical to the promotion rule.
Each config uses one of the following
mergeType
operators:-
GROUP_AND_SCORE
: Creates a group of data attributes and gives each a score. Data records score points when the attribute in a data record contains a value. The data set from the highest-scoring data record is the one that gets promoted. -
MOST_TRUSTED_VALUE
: Identifies a data object and evaluates its trustworthiness based on provided logic. It then promotes the data set containing the most trusted value. For example, the most trusted email address might be the one that the customer has consented to receive email messages from, as opposed to the email address that is unsubscribed from receiving email messages.For example, the most trusted email address might be the one where the customer has consented to receive email messages, as opposed to the email address that is unsubscribed from receiving email messages.
-
MAX
: Promotes the highest value. -
MIN
: Promotes the lowest value. -
NOT_NULL
: Eliminates records with null values before moving to the next promotion rule.
-
If the outcome of the first config is a tie, then the second config is run. If the second config ends in a tie, the next config is run. And so on, until only one data record is determined the winner. That instance of data is the one that gets promoted to the master entity. Therefore, the order in the configs parameter is critical to the promotion rule.
Each config uses one of the following mergeType
operators:
How do Promotion Rules Promote Attributes?
Let's look at a sample promotion rule in relation to a data set, to learn how the promotion rule decides which data is promoted to the master entity.
Example 1
The first promotion rule we will examine is the promotion rule ID "MasterCustomer_ruleId1". You can view the JSON for this rule in the example below.
This promotion rule is designed to:
-
Promote the highest fidelity contact record using the attributes first name, last name, middle name, suffix, prefix, date of birth, age, and gender.
Consider the following sets of data (which Unity already knows refer to the same person). Which data set would be the one to get promoted to the master entity according to this rule?
Data Set | First Name | Last Name | Middle Name | Suffix | Prefix | Date of Birth | Gender | Age |
---|---|---|---|---|---|---|---|---|
Data Set 1 | Kate | Brown | J | 19920504 | F | 23 | ||
Data Set 2 | Katherine | Brown | 19920504 | F | 22 | |||
Data Set 3 | Kathy | Brown | Jane | Mrs | NULL | F | NULL | |
Data Set 4 | Kate | 19110101 | F | 99 | ||||
Data Set 5 | Katie | Brown | NULL | F | NULL |
-
Based on the results of the
GROUP_AND_SCORE
config on First and Last Name ("order":1):-
Data set 1, data set 2, data set 3, and data set 5 all receive a score of three, whereas data set 4 receives a score of two
-
Data set 4 is excluded from further consideration, but the other data sets are tied
-
-
Based on the results of the
MOST_TRUSTED_VALUE
config on whether it's ok to email ("order":2), data set 2 is excluded, and data sets 1, 3, and 5 are tied. -
Based on the
MAX
config on whether the account is still active ("order":3), data sets 4 and 5 are excluded, and data sets 1 and 3 are tied. -
Based on the
MAX
config on time last modified ("order":4), data set 1 has the latest (therefore, largest) modified in timestamp.
Based on this promotion rule, Unity promotes the attributes for data set 1 to the master entity (first name, last name, middle name, suffix, prefix, date of birth, age, and gender).
Example 2
Next let's consider the promotion rule "MasterCustomer_ruleId3". You can view the JSON for this rule in the example below.
This promotion rule is designed to:
-
Promote the most appropriate email address by promoting the attributes "Email Address" and "OKtoEmail".
Consider the following sets of data (which Unity already knows refer to the same person). Which data set would be the one to get promoted to the master entity according to this rule?
Data Set | First Name | Last Name | Email Address | OK to Email? |
---|---|---|---|---|
Data Set 1 | Kate | Brown | kate.brown@example.com | N |
Data Set 2 | Katherine | Brown | katherine.brown@example.com | N |
Data Set 3 | Kathy | Brown | kathy.brown@example.com | Y |
The attributes for data Set 3 are promoted because "OKtoEmail" is the most trusted value, and the value for that data record is Yes.
Based on this promotion rule, Unity promotes the attributes for data set 3 to the master entity (Email Address and OK to Email).