Hello Team,
Welcome to the Adobe Real-Time CDP Community Mentorship Program 2024! This is the featured Community Discussion/Contextual thread for your Adobe Real-Time CDP Community Mentor, Manoj Kumar!
Manoj Kumar will be your dedicated mentor, providing valuable support and guidance on your Adobe Real-Time CDP queries as you upskill yourself and prepare for Real-Time CDP certification throughout the program.
Know your Mentor Manoj Kumar (aka @_Manoj_Kumar_ )
Manoj is a great contributor to Experience League communities, a CDP expert, and comes with a decade of experience.
Aspirants mapped to Manoj Kumar
How to participate in the program
Suggested Next Steps for Aspirants:
Remember that every post / like / comment you make in your contextual thread and the Real-time CDP Community throughout the program helps increase your chance to be recognized by your Mentor and win exclusive Adobe swag, so bring your best efforts!
We wish you all the best as you embark on this learning experience!
Hello @Amit_Shinde1 @JoyceLu1 @HamishMo @vabs95 @vprasad @PriyaSi1 @RavikiranPaturi @thewadeng @sramraobhogekar @somen-sarkar @Bhanu8562 @fondofhatsKey
I hope you are all well-versed with Module 1 and ready to start this week's learning for Module 2 (Real time customer profile)
Topics:
If you any questions related to these topics then feel free to post in this thread and I will share the questions of the week on Friday.
Hello @_Manoj_Kumar_,
Would it be possible to post the relevant documentation pages and other resources that would help us to answer these topics? Although this aligns with Module 2 in the Exam Prep Guide, I believe that a more structured approach would help to solidify our learning.
Respectfully,
Hello @Amit_Shinde1 @JoyceLu1 @HamishMo @vabs95 @vprasad @PriyaSi1 @RavikiranPaturi @thewadeng @sramraobhogekar @somen-sarkar @Bhanu8562 @fondofhatsKey
Happy Friday!
Here is the question #1 for Module 2 topic: Describe how profile assembly works
You are trying to set up a merge policy to use the dataset precedence. What type of datasets can you use to set up dataset precedence?
To set up a merge policy using the data precedence, we must select the Profile and ExperienceEvent datasets that are included and then can manually order the Profile datasets for precedence. The top dataset will be given the highest priority.
@_Manoj_Kumar_,
As mentioned in this documentation, you can set up both Profile and ExperienceEvent datasets and manually order the Profile datasets by precedence.
Respectfully,
@thewadeng
@_Manoj_Kumar_ In order to set up merge policies by data set precedence. we must select Profile and ExperienceEvent Datasets. and then we can manually give precedence to profile datasets. and It will give high priority based on the order we setup for precedence
Thanks,
Sahil
Profile datasets can be selected for dataset precedence and manually ordered as per priority. Event Datasets are always timestamp ordered.
Thanks,
Somen
Views
Replies
Total Likes
Hello @Amit_Shinde1 @JoyceLu1 @HamishMo @vabs95 @vprasad @PriyaSi1 @RavikiranPaturi @thewadeng @sramraobhogekar @somen-sarkar @Bhanu8562 @fondofhatsKey
Happy Friday!
Here is the question #2 for Module 2 topic: Describe how the Identity Graph works
Question:
Based on the given fields what would be the identities for this XDM individual class schema?
Field | Null | Unique |
Frequency Flyer Number | No | Yes |
Yes | Yes | |
Phone | No | Yes |
@_Manoj_Kumar_ ,
Based on the given fields, I believe that the email would be the primary identity for this schema, as it is both a unique and null value. The Frequent Flyer Number and phone number would be secondary identities.
My reasoning is that the email can be more easily stitched into an identity graph and referenced by another schema through a one to one or one to many relationship. I believe that it is a best practice to typically use Profile-based fragments such as email as primary identifiers in schema.
I derived this answer from my knowledge of identities and how they are ingested into the Identity Graph.
8/2 EDIT: After thinking over the problem again, I've changed my answer to the frequent flyer number.
Respectfully,
@thewadeng
We can set the Frequency Flyer Number as a primary identities as this field is a Unique and not null. we can include the Phone as a secondary Identity as it is not null (required checked in XDM schema) and Email as a optional secondary identity as it contains null values.
@_Manoj_Kumar_
Primary Identity - Frequency Flyer Number
Secondary Identity - Phone
Thanks,
Sahil
Frequent Flyer Number and Phone number are candidate for primary identities as fields are non nullable and unique. Email should not be used as identity as it may not be present for all individuals.
Thanks,
Somen
Hello @Amit_Shinde1 @JoyceLu1 @HamishMo @vabs95 @vprasad @PriyaSi1 @RavikiranPaturi @thewadeng @sramraobhogekar @somen-sarkar @Bhanu8562 @fondofhatsKey
Here is the question #3 for Module 2 topic: Describe Profile Composition
Question:
Adobe RT CDP developer is using HTTP API to ingest the data the following data in CDP.
Ingestion 1:
Profile Payload:
{"crm_id" : "1234", "first_name" : "John", "last_name":"Doe"}
Event Payload:
{"_id" : "100", "crm_id" : "1234", "eventType" : "registration"}
Ingestion 2:
Profile Payload:
{"crm_id" : "1234", "first_name" : "Doe", "last_name":"John"}
Event Payload:
{"_id" : "101", "crm_id" : "1234", "eventType" : "login"}
@_Manoj_Kumar_ ,
Part - 1: _id equals 101 in ingestion 2,
In this scenario, as the crm_id is same in both ingestion second ingestion will overwrite the profile data as
"crm_id: "1234"
"first_name":"Doe"
"last_name": "John"
Event data - both the events will be recorded under the same profile as they have same crm_id and different '_id' values
Final JSON structure will look like:
{
"crm_id": "1234",
"first_name": "Doe",
"last_name": "John",
"events":[
{
"_id": "100",
"crm_id": "1234",
"eventType": "registration"
},
{
"_id": "101",
"crm_id": "1234",
"eventType": "login"
}
]
}
Part -2 : _id equals 100 in ingestion 2,
In this scenario, as the "_id" value in ingestion 1 and ingestion 2 is equal it will cause an overwrite rather than addition because "_id" serves as unique identifier for events. So, the second payload will overwrite the first one.
Final JSON will look like:
{
"crm_id": "1234",
"first_name": "Doe",
"last_name": "John",
"events":[
{
"_id": "100",
"crm_id": "1234",
"eventType": "login"
}
]
}
Regards,
Sahil
1. Profile should contain following details :-
{"crm_id" : "1234", "first_name" : "Doe", "last_name":"John" , "eventType[]" : "login","registration"}
2. If _id is kept same then the original event data with _id 100 from the first ingestion (which had eventType as registration) will be lost, as it has been overwritten by the second event ingestion. So values should look something like below :-
{"crm_id" : "1234", "first_name" : "Doe", "last_name":"John" , "eventType" : "login"}
Thanks,
Somen
@_Manoj_Kumar_,
1. The final value would be:
{"crm_id" : "1234", "first_name" : "Doe", "last_name":"John"}
This is because the new value of first_name has been updated to "Doe" based off the connection with the crm_id. It should be noted that through identity stitching, the original value would be linked with the new value in the Identity Graph.
2. Because of event deduplication, the event would likely drop as the built-in check within AEP for duplicate events would recognize the similar id and not receive the confirmation needed. In this case, the event would be overwritten due to the similar id, so the value would be:
{"_id" : "101", "crm_id" : "1234", "eventType" : "login"}
Respectfully,
@thewadeng
Hello @Amit_Shinde1 @JoyceLu1 @HamishMo @vabs95 @vprasad @PriyaSi1 @RavikiranPaturi @thewadeng @sramraobhogekar @somen-sarkar @Bhanu8562 @fondofhatsKey
Here is the question #4 for Module 2 topic: Differentiate between edge vs. hub profile
Question:
There 2 two scenarios.
What would be the dataflow if an identified customer interacts with a website (Web SDK enabled)?
@_Manoj_Kumar_ ,
Scenario 1: A profile exists on Hub but does not exists on Edge
Scenario 2 : A profile exists on both hub and Edge.
In both the scenarios, second scenario will have faster response time compared to first scenario
Regards,
Sahil
Scenario 1: Profile Exists on Hub but Not on Edge
Initial Interaction:
Edge Processing:
Hub Processing:
Edge Update:
Scenario 2: Profile Exists on Both Hub and Edge
Initial Interaction:
Edge Processing:
Hub Synchronization:
Hub-to-Edge Sync:
Thanks,
Somen
@_Manoj_Kumar_,
Scenario 1: When the customer interacts with the website, their Profile information will be sent in a payload to the Edge Network as part of collection via WebSDK. Once it reaches the Hub, the information is compared against the Edge to see if the Profile information exists. If it doesn't exist, then a Profile is created. Once the information in the Hub has been created and updated, then it is sent back to the Edge for use in personalization.
Scenario 2: Similar to the first scenario, Profile information is sent through a Payload to the Edge Network which is then compared to the information on the Hub Network. If any discrepancies are found, then the information is updated to reflect the new value and sent back to the Edge Network for personalization.
I derived this knowledge based on my understanding of the Edge Network and Hub. On that note, where would I find documentation to learn more about this in detail?
Respectfully,
@thewadeng
Hello @thewadeng You can find more information on this here:
Views
Replies
Total Likes
Views
Likes
Replies
Views
Likes
Replies