Expand my Community achievements bar.

[Mentor Manoj Kumar] Adobe Real-Time CDP Community Mentorship Program 2024

Avatar

Employee

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

1) Amit Shinde aka @Amit_Shinde1 
2) Joyce Luey aka @JoyceLu1 
3) Hamish Moffatt aka @HamishMo 
4) Vaibhav Seth aka @vabs95 
5) Vinay Prasad aka @vprasad 
6) Priya Singh aka @PriyaSi1 
7) Ravi kiran Paturi aka @RavikiranPaturi 
Waden Greaux aka @thewadeng 
9) Sahil Ramrao Bhogekar aka @sramraobhogekar 
10) Somen Sarkar aka @somen-sarkar 
11) Bhanu Chander Pasala aka @Bhanu8562 
12) Michael Giddings aka @fondofhatsKey 

How to participate in the program

  • Post your Questions in this thread to connect with your Mentor, Manoj , and fellow Aspirant peers.
  • Stand a chance to win the ‘Most Engaging Aspirant’ recognition from your mentor by participating in a weekly quiz.
  • Test your knowledge by replying to the unresolved questions in the Real-Time CDP and AEP community and tag your Mentor to get recognized as an ‘Exceptional Contributor’ by your mentor.
  • Stick to the schedule to cover one module/week and clear Adobe Real-Time CDP Certification during the program: July 15 – Aug 30

Suggested Next Steps for Aspirants:

  • Update your Community Profile photo with your latest headshot to stand out to your Mentor and Peer Aspirants.
  • "Like" this thread to confirm your participation in the program.
  • Introduce yourself to Manoj and your Aspirant peers by Replying to this Thread! Break the ice by introducing yourself (location, org/ company, etc.) and your experience with/ interest in Adobe DX stack. 
  • Post your Questions to this thread as you begin learning more about the Adobe Real-Time Customer Data Platform Developer Expert certification (Exam ID: AD0-E605)
  • Stick to schedule and ensure you track your progress in the exam prep guide.
  • Test your learning by replying to weekly quiz by your mentor
  • Practice the modules by replying to unresolved queries in the AEP community & RTCDP Community and tag your mentor. 

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!

85 Replies

Avatar

Community Advisor

@Amit_Shinde1  @JoyceLu1 @HamishMo  @vabs95 @vprasad  @PriyaSi1 @RavikiranPaturi @thewadeng @sramraobhogekar  @somen-sarkar @Bhanu8562  @fondofhatsKey 

 

Here is the first question of the week for topic: Based on a scenario, translate RDBMS to RTCDP's NoSQL data model

 

An e-commerce company is considering migrating its customer data from a traditional relational database management system (RDBMS) to Adobe Experience Platform (AEP) Real-Time Customer Data Platform (RTCDP). The company's customer data includes a wide range of attributes, such as customer profiles, purchase history, product preferences, and marketing interactions.

To best enable data onboarding to AEP, which approach should be taken when translating the RDBMS data model to AEP RTCDP's XDM data model?

  1. Create a single XDM schema with all customer data attributes, replicating the RDBMS structure
  2. Create separate XDM schemas for each customer data entity, utilizing denormalization to reduce joins
  3. Employ logical grouping to categorize customer data based on usage patterns and create XDM schemas for each group
  4. Implement profile and experience event classes, denormalizing frequently accessed data and linking them through relationships

 

You can refer to this documentation to get an understanding to the question:

https://experienceleague.adobe.com/en/docs/experience-platform/xdm/schema/best-practices#create-an-e...

 

 


     Manoj
     Find me on LinkedIn

Avatar

Level 3

@_Manoj_Kumar_

I believe that the answer is 4. This is because of a few factors: 

  • It is considered best practice to use XDM Individual and Experience Event Classes whenever possible.
  • Denormalizing frequently accessed data is a standard of Adobe's XDM model, as it allows for easier segmentation and simpler queries using Query Service.
  • Relationships help contribute to the Identity Graph, which in turn helps contribute to the development of profiles using profile fragments and identity stitching which is merged by Profile.

My reasoning was based off the documentation and the process through which I would translate a RDBMS table into XDM's model. 

Respectfully, 

@thewadeng 

 

Avatar

Community Advisor

Yes, That's the correct answer @thewadeng 


     Manoj
     Find me on LinkedIn

Avatar

Community Advisor

Hi @_Manoj_Kumar_ ,

Answer is 4. -- Customer profiles and product preferences are candidates of XDM Individual Profile and lookup entity . Relationship can be built between lookup entity and Customer profiles. While purchase history and marketing interactions should be based on XDM ExperienceEvent class (time-series) .

 

Thanks,

Somen

Avatar

Community Advisor

@Amit_Shinde1  @JoyceLu1 @HamishMo  @vabs95 @vprasad  @PriyaSi1 @RavikiranPaturi @thewadeng @sramraobhogekar  @somen-sarkar @Bhanu8562  @fondofhatsKey 

 

Here is the second question of the week for topic: Demonstrate best practices for modeling the Real-Time Customer Profile 

 

A data architect needs to label a phone number field as a person-based identity within a schema.
What can a data architect do to make sure the field only accept valid input?

  1. Add regex field to the payload/CSV fil..
  2. Add regex pattern to identity name space of the identity
  3. Add regex pattern to the schema field 

 

 


     Manoj
     Find me on LinkedIn

Avatar

Level 3

@_Manoj_Kumar_

I believe that is the correct answer. I do not believe it is possible to add regex patterns to identity name spaces at this time. I also believe that adding regex to the field will allow for values to be captured at the time of ingestion and filtered later based on the namespace of the identity. 

 

My reasoning was based off my current knowledge of both RT-CDP and Identity Service.

 

Respectfully, 
@thewadeng 

Avatar

Community Advisor

@thewadeng  You are killing it. That's the correct answer


     Manoj
     Find me on LinkedIn

Avatar

Community Advisor

Hi @_Manoj_Kumar_ 

The answer is 3 ) Add regex pattern to the schema field

Validation can be enabled at the schema field label to have regex, min, max etc . While ingesting data to a dataset corresponding to that schema then will honour the rules for that particular field. 

 

Thanks,

Somen

Avatar

Community Advisor

@Amit_Shinde1  @JoyceLu1 @HamishMo  @vabs95 @vprasad  @PriyaSi1 @RavikiranPaturi @thewadeng @sramraobhogekar  @somen-sarkar @Bhanu8562  @fondofhatsKey 

 

Here is the third question of the week for topic: Design the identity strategy and relationships for modeling

 

For an Airline company, the customer can login to the mobile app either via a Frequent Flyer number or an email address. At a given point you will have access to one of the them. The goal is to use only on Primary identity to identify a customer.

How can you capture a login event in RT CDP when multiple identities are involved? 

  • Make the Frequency Flyer number as Primary identity and email as secondary identity
  • Create two separate event schemas for each identity
  • Use identity map and set primary identity while capturing the event.

 

 


     Manoj
     Find me on LinkedIn

Avatar

Level 3

@_Manoj_Kumar_

I believe that the answer is 3. Using the process of elimination and given what we know about the requirements of the company, the following can be deduced:

  • Marking the Frequency Flyer number as the Primary Identity and the email as secondary identity would work if at the time of login we had access to both; however, as the system is dynamic, this would not be a suitable solution as there would be discrepancies with data if the email were to be collected. 
  • Creating two separate event schemas for the company would be an alternate option, but this would not align with Adobe's best practices, as such schemas create redundancy and overhead within an XDM ERD. 
  • The IdentityMap makes the most sense, as we can configure it to deliver the correct identities at the time of login based on the user's path. We can set the primary identity at the time of event, ensuring that there is no disruption in data. 

Respectfully, 
@thewadeng 

Avatar

Level 2

Hi @_Manoj_Kumar_ , Thanks for the Brainstorming quiz.

Below are the answers:

1) option 4 - implementing via  profile and experience events classes makes more sense and mantaining relationship

2) option 3 - To ensure that a phone number field only accepts valid input, a data architect should add a regex pattern directly to the schema field.
3) option 3 - Use an identity map and set the primary ID at the time of capturing event makes more sense

Avatar

Level 2

@_Manoj_Kumar_ 

Below are the answer I can think of

1. I think 4 is the right answer as the we need to migrate the Profile attributes as well as events based records (purchase, preference & marketing interactions) 

2. Answer is 3. we can apply the regex while creating the phone number field

3. I guess answer is 3. I am not sure on this but 1 & 2 don't seem correct options for the scenario

Avatar

Community Advisor

@Amit_Shinde1 For Questions 3. The correct answer is using the identity map. Identity Map lets you create Identities on the fly and you can choose to mark it Primary.

 

You can see the documentation here: https://experienceleague.adobe.com/en/docs/experience-platform/xdm/field-groups/profile/identitymap

 


     Manoj
     Find me on LinkedIn

Avatar

Level 2

Thanks @_Manoj_Kumar_ for sharing the documentation & explanation. I will go through the documentation. 

Avatar

Community Advisor

Hi @_Manoj_Kumar_ ,

This is an intriguing question. I believe the correct answer involves a combination of Option 1 and Option 3.

      Option 1 is necessary because a schema should have a primary identity and can include multiple secondary identities based on the use case. In this context, the Frequent Flyer ID might be more suitable as the primary identity compared to an email. These identities will be useful later for generating identity maps when data is ingested into different datasets. In a real-world scenario, multiple XDM Individual schemas, lookups, or experience events will be present.

     Option 3’s identityMap should be utilized because customers can log in using both their Frequent Flyer ID and email. The primary(Frequent Flyer ID) and secondary(email)  identity types can be specified in the identityMap’s details.

This is my understanding after referring to the documentation. Please correct me if I am missing any aspects. I have a few questions:

1) Is it possible to set multiple primary identities using the identityMap? From the structure of the identityMap, it seems the primary attribute can be set to true for multiple identities.
2) In a practical scenario, should there be a single primary identity for a specific schema using the identityMap, or can there be multiple? What is the recommendation here?

 

Thanks,

Somen

Avatar

Community Advisor

Hello @somen-sarkar  The correct answer is to use IdentityMap. Because the questions says to create only one Primary key for schema.

 

1) Is it possible to set multiple primary identities using the identityMap? From the structure of the identityMap, it seems the primary attribute can be set to true for multiple identities. Yes, We can dynamically set the PK 
2) In a practical scenario, should there be a single primary identity for a specific schema using the identityMap, or can there be multiple? What is the recommendation here?

If we are taking about XDM Individual Class schema then it is best practice to set the Identities manually in the schema. But sometimes it might not be possible. Eg, Push Notifications. 


     Manoj
     Find me on LinkedIn

Avatar

Community Advisor

Thanks @ _Manoj_Kumar_ for the response. Few doubts :-

1) Is it possible to set multiple primary identities using the identityMap? From the structure of the identityMap, it seems the primary attribute can be set to true for multiple identities. Yes, We can dynamically set the PK   

Datasets are being created following a schema and inside schema we set the primary and secondary identities on fields.  Now during a customer interaction with website/app , how are we dynamically changing the primary keys which are related to schema ? Actually unable to grasp the concept of dynamically changing the identity . If any documentation or use case and implementation using identityMap  , kindly share the same  ?

 

Thanks,

Somen

Avatar

Community Advisor

Hello @somen-sarkar In this case the schema won't have any kind of Primary key defined. The best use I worked with is the push notifications where the users will have ECID as default primary key until they login. When they login their customerId will be the primary key.

 

You can learn more about identitymap here.

https://experienceleague.adobe.com/en/docs/experience-platform/web-sdk/identity/overview#using-ident...

 

https://experienceleague.adobe.com/en/docs/platform-learn/implement-mobile-sdk/app-implementation/id...


     Manoj
     Find me on LinkedIn