XDM Identity field as array
I have a data scenario, where my primary Identity has multiple secondary identities in the source data.
There is a MDM system which is generating the Primary Identity - Customer Id
The subscription system is a standalone system which is managing various subscriptions and also generate an identitifer for each customer "Subscriber Id". Now the problem is, because of not havign strong matching engine and varity of data, alsmost for 20% of cases, for same person, this system ends up creating multiple "Subscriber Id" for a person.
Illustration:
MDM
Thomas Cook and Tom Cook are identified as same customer and ends up having one Customer Id (12345679)
Subscription System
Due to the different first name, this platform generated 2 separate Subscriber Ids
- Thomas Cook : Subscriber Id: 50001
- Tom Cook : Subscriber Id: 60001
Subscription system also sends various events to AEP and shares the Subscriber Id (Primary Identity) as event data (subscrition related call data etc)
MDM System mainatains a cross reference table to maintain the cross referrence between Customer Id and Subscriber Id, as follows:
Customer Id Subscriber Id
12345679. 50001
12345679. 60001
Some times, Subscription system deletes the Subscriber Id as well.
In AEP, we need to consume this cross referrence table so that we can stitch the Customer Data from MDM with the Subscription data. Now the question is: shall we create
- OPTION 1: an Event Schema with Customer Id as Primary Identity and Subscriber Id (as non-primary identity)
- With Event schema we can maintain 1:N relationship between Customer Id andSubscriber Id
- Problem: if Subscriber Id gets deleted from Subscription system, then that need to be deleted from AEP as well, then we need to raise Data Lifecycle request to delete all the records having the deleted Subscriber Id. It takes around 7-15 days to complete. Not a nail biting issue as it will not increase the number of profiles in AEP
- OPTION 2: a Individual Profile schema with Customer Id as Primary Identity and an array of Subscriber Id (as non-primary identity)
- With this option, we can also maintain 1:N relationship between Customer Id andSubscriber Id
- Problem: Any time Subscriber Id is getting deleted from Subscription system, then we need to request MDM system to rebuild the array of Subscriber Id for the Customer Id associated with the deleted Subscriber Id. Very low impact issue.
- OPTION 3: a Individual Profile schema with identityMap where Customer Id as Primary Identity and an array of Subscriber Id (as non-primary identity)
- PROS and CONS are same as Option 2
Trying to understand which option will be the best to implement, considering we will be using these data in:
- Customer Journey Analytics
- Adone Journey Optimizer
- RT-CDP - Segmentation
Looking forward to see some valuable suggestions from the experts here in this community.
