Expand my Community achievements bar.

SOLVED

What is the Impact if we using same OOTB field in 2 different schemas? and both schemas having different Identity.

Avatar

Level 3

Hello Everyone,
please help me understand more on below scenario
If we are using the same OOTB field (like Demographics Details & Personal Contact Details) in 2 different schema for each schema having different Identifier so definitely it will impact while exporting the profiles from destinations correct me if I'm wrong.
So how can handle such issue please let me know
As per my knowledge we will go with Custom / Lookup Class for 2nd schema. So can we use OOTB under the Lookup class?

2 Accepted Solutions

Avatar

Correct answer by
Community Advisor

Hi @sandip_surse 

 

When bringing this data together, merge policies rules in Platform uses to determine how data will be prioritized and what data will be combined to create a unified view.

 

When the data from multiple sources conflicts (for example one fragment lists the customer as “single” while the other lists the customer as “married”) the merge policy determines which information to include in the profile for the individual.

 

There are two merge methods:-

1. Dataset precedence: In the event of a conflict, give priority to profile fragments based on the dataset from which they came.

2. Timestamp ordered: In the event of a conflict, priority is given to the profile fragment which was updated most recently.

 

I'll suggest you to go through with the following merge policy documentation  https://experienceleague.adobe.com/docs/experience-platform/profile/merge-policies/overview.html?lan... 

View solution in original post

Avatar

Correct answer by
Employee Advisor

@sandip_surse ,

If those two schemas use mutually-exclusive identifiers, and there is no third schema that can bridge those two identifiers than you are correct that profile-stitching will not work for those two schemas (and their respective datasets). Each of the two schema/datasets will create separate profiles, even if in reality there is overlap.

Say in Schema/Dataset 1, you are:

First Name: Sandip

Last Name: Surse

Customer_ID: 1234

 

And in Schema/Dataset 2, you are:

First Name: Sandip

Last Name: Surse

Employer ID: 567

 

You will have two separate profiles and both could be exported. If your segment was built using the "Default Timebased" merge policy and you selected "First Name" as a profile attribute in your export, I would expect two "Sandip" records would be exported.

 

I'm not 100% sure what you are trying to do, but you could create separate merge policies: Merge policy 1 contains Dataset 1 (based on Schema 1) and Merge policy 2 contains Dataset 2 (based on Schema 2). You could then create two versions of your segment, Segment 1 which uses Merge policy 1 and Segment 2 which uses Merge policy 2. This should allow you to keep the data from schema/dataset 1 and schema/dataset 2 separate on your exports. Does this make sense? Is this what you are trying to do?

Click on the "gear" icon in the segment builder to expose the merge policy selection: 

dwright_0-1670429023339.png

 

 

 

View solution in original post

7 Replies

Avatar

Community Advisor

Hi @sandip_surse 

 

Using the same OOTB field as an identifier in 2 different schema won't impact anything on profile. These field groups like Demographics Details & Personal Contact Details are created for reusability and can be used in multiple schemas. You can use different identifiers in each schema. For the use case described above, there is no need to create any custom or lookup schema, you are good to use standard field groups.

 

Hope this helps.

Avatar

Level 3

Hi AvinashGupta01,
I understood these field groups like Demographics Details & Personal Contact Details are created for reusability and can be used in multiple schemas but consider the scenario both schema having firstName & lastName attribute so during the exporting the data at destination side possibility to overright the data for above 2 attribute and as per recently ingested data in schemas only those data we can export correct me if I'm wrong.

If is we export FirstName attribute from destination then how we can confirm in export file data is exporting either from schema1 or schema2.

 

Avatar

Correct answer by
Community Advisor

Hi @sandip_surse 

 

When bringing this data together, merge policies rules in Platform uses to determine how data will be prioritized and what data will be combined to create a unified view.

 

When the data from multiple sources conflicts (for example one fragment lists the customer as “single” while the other lists the customer as “married”) the merge policy determines which information to include in the profile for the individual.

 

There are two merge methods:-

1. Dataset precedence: In the event of a conflict, give priority to profile fragments based on the dataset from which they came.

2. Timestamp ordered: In the event of a conflict, priority is given to the profile fragment which was updated most recently.

 

I'll suggest you to go through with the following merge policy documentation  https://experienceleague.adobe.com/docs/experience-platform/profile/merge-policies/overview.html?lan... 

Avatar

Employee Advisor

Hi Sandip,

You should definitely be aware of the merge policies are and how they play a role in your scenario.

 

Merge policies tell profile how to handle scenarios when two XDM Individual Profile class-based datasets contain data for the same column. For examples, say both of your schemas/datasets contain address information for the same customer. And even though you mention that these two schemas/datasets contain different identifiers, perhaps there is a third schema/dataset that can serve to graph these two identities together so both addresses are available to a single customer's real-time customer profile. So which address (address 1 or address 2) do you you want to use as this customer's address when activating their profile to a destination? 

 

This is where merge policies come into play. They let you flexibly define logic to determine which dataset should take precedence. The default is time-based (which record was ingested most recently), but you can also prioritize the datasets (e.g. always prioritize your CRM's data over your Loyalty systems).

 

I suggest watching this video:
https://experienceleague.adobe.com/docs/platform-learn/tutorials/profiles/create-merge-policies.html

Avatar

Level 3

Hi 
Thanks for response
Yes I understand the merge policy and also I'm again watching above video as you suggested but before that few more doubt 
Consider Schema 1 - Identifier is Customer_ID
Schema 2 - Identifier is Employer ID  
so apart from that no any SK so as per my knowledge profile stitching not work here correct me if wrong.
Considering the above scenario I have ask above question so if we use sane OOTB field for both different schema so during the export data if we select the attribute like firstName & last Name so as per recent data ingested in platform those data only we can export we can't sure that specific data belongs from Schema1 or Schema2. 

 

Thanks

Avatar

Correct answer by
Employee Advisor

@sandip_surse ,

If those two schemas use mutually-exclusive identifiers, and there is no third schema that can bridge those two identifiers than you are correct that profile-stitching will not work for those two schemas (and their respective datasets). Each of the two schema/datasets will create separate profiles, even if in reality there is overlap.

Say in Schema/Dataset 1, you are:

First Name: Sandip

Last Name: Surse

Customer_ID: 1234

 

And in Schema/Dataset 2, you are:

First Name: Sandip

Last Name: Surse

Employer ID: 567

 

You will have two separate profiles and both could be exported. If your segment was built using the "Default Timebased" merge policy and you selected "First Name" as a profile attribute in your export, I would expect two "Sandip" records would be exported.

 

I'm not 100% sure what you are trying to do, but you could create separate merge policies: Merge policy 1 contains Dataset 1 (based on Schema 1) and Merge policy 2 contains Dataset 2 (based on Schema 2). You could then create two versions of your segment, Segment 1 which uses Merge policy 1 and Segment 2 which uses Merge policy 2. This should allow you to keep the data from schema/dataset 1 and schema/dataset 2 separate on your exports. Does this make sense? Is this what you are trying to do?

Click on the "gear" icon in the segment builder to expose the merge policy selection: 

dwright_0-1670429023339.png

 

 

 

Avatar

Level 3

Hi 

Thank you for response

We are just doing some testing so I just what to understand something more on that so that's why I asked such question.

 

Thanks