Nordic Sugcon xdb crash course

59
Sitecore xDB A Crash Course Todd Mitchell, @agenttmi Technical Product Manager, Sitecore

Transcript of Nordic Sugcon xdb crash course

Page 1: Nordic Sugcon xdb crash course

Sitecore xDBA Crash Course

Todd Mitchell, @agenttmiTechnical Product Manager, Sitecore

Page 2: Nordic Sugcon xdb crash course

@agenttmi

Page 3: Nordic Sugcon xdb crash course
Page 4: Nordic Sugcon xdb crash course

What is xDB?

Page 5: Nordic Sugcon xdb crash course

CRM SocialMedia

Customer SupportWebsite

POS Apps

problem

Page 6: Nordic Sugcon xdb crash course

CRM SocialMedia

Customer SupportWebsite

POS Apps

Problem ERP

Page 7: Nordic Sugcon xdb crash course

Centrally stored ExperiencesCRM Social

Media

Customer SupportWebsite

POS AppsxDB

Page 8: Nordic Sugcon xdb crash course

Model

Contact

Interaction

Web VisitPhone CallHotel Check-InEmail Opened

Outcome

Ticket PurchaseProduct PurchaseSigned Phone Contract

Page 9: Nordic Sugcon xdb crash course

Part 1

xDB Platform Architecture

Page 10: Nordic Sugcon xdb crash course

10

⁞Server RolesContent Delivery

Content Authoring

Processing ReportingCollection

Experience Management

Experience Database

Page 11: Nordic Sugcon xdb crash course

11

InfrastructurexDB

Processing Server

Reporting Server

Search Index

Reporting Database

MongoDB

Content Delivery Cluster

Session State Server

(Sql or Mongo)

CD 1 CD 2 CD 3

Content Authoring

Content Authoring 1

Content Authoring 2

Session State

Page 12: Nordic Sugcon xdb crash course

12

Infrastructure – Content Delivery

Content Delivery

Session State Database

Tracker

Content Delivery

Tracker

Content Delivery Cluster

Page 13: Nordic Sugcon xdb crash course

SharedContact

PrivateInteraction

CollectionDatabase

Goal

PagePage

Contact (if exists)

Tracking web sessionsDelivery Cluster Session

Page 14: Nordic Sugcon xdb crash course

key behavior cache

14

New!8.1

Fast loading customizable cache of recent key behavior and events

Enabling personalization on historical behavior

Page 15: Nordic Sugcon xdb crash course

15

@ Scale

Content Delivery Cluster

Session State Server

(Sql or Mongo)

CD 1 CD 2 CD 3

Content Delivery Cluster

Session State Server

(Sql or Mongo)

CD 1 CD 2 CD 3

Content Delivery Cluster

Session State Server

(Sql or Mongo)

CD 1 CD 2 CD 3

xDB

Processing Server

Reporting Server

Search Index

Reporting Database

MongoDB

Content Delivery Cluster

Session State Server

(Sql or Mongo)

CD 1 CD 2 CD 3

Page 16: Nordic Sugcon xdb crash course

Part 2API

Page 17: Nordic Sugcon xdb crash course

Collect Process Report

Page 18: Nordic Sugcon xdb crash course

18

Background – Who’s the Brand?⁞Jetstream airlines

Page 19: Nordic Sugcon xdb crash course

19

Background – External Systems⁞ Membership database⁞ Call Center system⁞ Ticket Booking System

Page 20: Nordic Sugcon xdb crash course

Jetstream wishes to own the experience… for all individuals interacting with their brand

Page 21: Nordic Sugcon xdb crash course

… using all data known for an individual

Page 22: Nordic Sugcon xdb crash course

22

The Problems…⁞How do I

1. Use my membership data in Sitecore xDB?2. Use interactions from my Call Center?3. Leverage ticket purchases from my booking system?

Page 23: Nordic Sugcon xdb crash course

Problem 1Using membership data

Page 24: Nordic Sugcon xdb crash course

24

Using membership data⁞Jetstream’s membership system has the following attributes per user…

⁞ Member Id – unique identifier for their users⁞ First Name, Last Name⁞ Membership Status – Silver, Gold, etc.⁞ Preferred Seat

Page 25: Nordic Sugcon xdb crash course

25

Solution⁞Extend the contact

⁞Facet Technology⁞Unified Contact Model⁞Contact Bulk Import

Page 26: Nordic Sugcon xdb crash course

26

What is contact facet technology?⁞ Enables extensibility model on

Sitecore’s Contact⁞ Used internally⁞ Ship with a default set of

attributes (name info, email addresses, phone numbers, etc.)

⁞ Scales since it’s part of the Contact

Page 27: Nordic Sugcon xdb crash course

27

Unified Contact Model⁞Centralizing Key Fields⁞ Default Attributes (first name, last name, etc.)⁞ List of email addresses with bounce count⁞ List of Addresses⁞ List of Phone Numbers⁞ Consent Revoked⁞ Communication Revoked

Page 28: Nordic Sugcon xdb crash course

28

Designing the contact…Determine which attributes the you want available in your web presence..

A few factors..1.Identification strategy2.Personalization strategy3.Segmentation strategy

Page 29: Nordic Sugcon xdb crash course

29

Identification leads to Merging⁞ Happens when you call Tracker.Session.Identify⁞ It’s expected you customize this for the brand’s specific facets

Page 30: Nordic Sugcon xdb crash course

30

Defining Facet Technology⁞Brand Attributes⁞ First Name, Last Name ⁞ Member Id – unique

identifier for their users⁞ Membership Status –

Silver, Gold, etc.⁞ Preferred Seat

Page 31: Nordic Sugcon xdb crash course

31

Contact Bulk Import⁞Queue up large numbers of new or existing Contact’s to be stored in xDB

⁞Customize specific attributes to be updated

Page 32: Nordic Sugcon xdb crash course

Problem 2Using experiences from Call Centers

Page 33: Nordic Sugcon xdb crash course

33

Using experiences from Call Centers⁞Jetstream’s call center handles thousands of calls per day…

1)They want to collect the results of the call per contact…2)Personalize the web experience based on the phone call’s result…

Page 34: Nordic Sugcon xdb crash course

34

Solution⁞Import Interactions

⁞Channels⁞Venues⁞Touch points⁞Interaction Registry API

Page 35: Nordic Sugcon xdb crash course

35

Channel⁞Source of the interaction

Page 36: Nordic Sugcon xdb crash course

36

Venue⁞Physical location of the interaction

Page 37: Nordic Sugcon xdb crash course

37

Touch point1.Interface between a contact and a brand

Page 38: Nordic Sugcon xdb crash course

38

Interaction Registry API⁞Enables you to import interactions⁞Uses same execution model as a web session…

Page 39: Nordic Sugcon xdb crash course

Problem 3Leverage ticket purchases from my booking system

Page 40: Nordic Sugcon xdb crash course

40

Using the booking system’s data⁞Jetstream has a centralized booking system for flight and vacation purchases.

1)They wish treat this information as experience data to use for personalization..

⁞ Surveys⁞ New offers

Page 41: Nordic Sugcon xdb crash course

41

Solution⁞Register Outcomes

⁞Significant events planned by the brand.

Page 42: Nordic Sugcon xdb crash course

42

Outcomes⁞Outcome is not a Goal⁞Can have Monetary Value⁞Directly associated to the contact…

Interactions Interactions Goal Goal Interactions OutcomeInteraction Interactions

Page 43: Nordic Sugcon xdb crash course

43

Registering OutcomesOutcome Manager API

Page 44: Nordic Sugcon xdb crash course

Quick Recap..

Page 45: Nordic Sugcon xdb crash course

45

The Problems…done.Membership data in Sitecore 8

Facets, unified contact, Bulk importExperiences from my Call Center

Interaction registryLeverage ticket purchases from my booking system

Outcomes

Page 46: Nordic Sugcon xdb crash course

Collect Process Report

Page 47: Nordic Sugcon xdb crash course

Collection Database

Reporting Database

Contact Segmentation Index

ProcessingService

Aggregationtask

Blue arrow : data fetchedOrange arrow : data pushed

Processing data flow

Page 48: Nordic Sugcon xdb crash course

48

Processing1)Contact2)Interaction

Page 49: Nordic Sugcon xdb crash course

49

Contact ProcessingExecutes when a contact is 1)Created2)Updated3)Obsoleted

Page 50: Nordic Sugcon xdb crash course

50

Interaction ProcessingExecutes when:

1)Web session is completed

2)Via Interaction Registry

Page 51: Nordic Sugcon xdb crash course

Collect Process Report

Page 52: Nordic Sugcon xdb crash course

Collection Database

Rep

ortin

g S

ervi

ce

Content Management

ProcessingService

Aggregationtask

Blue arrow : data fetchedOrange arrow : data pushed

Reporting data flow

Reporting Database

ContactSegmentation

Index

Page 53: Nordic Sugcon xdb crash course

53

Reporting/Query APIQuerying data from xDB⁞ SQL⁞ Mongo⁞ Contact Segmentation Index

Page 54: Nordic Sugcon xdb crash course

54

Querying Mongo directly⁞Try to only do this when using an indexed field.

⁞ ContactId⁞ Identifier

Page 55: Nordic Sugcon xdb crash course

55

Querying Contact Index⁞Uses Sitecore.ContentSearch API⁞Use when you wish to search across a contact’s behavior

⁞ Interactions⁞ Goals⁞ Campaigns⁞ …

Page 56: Nordic Sugcon xdb crash course

56

Querying Reporting database⁞Accepts T-SQL⁞Executes against reporting database

Reporting S

ervice

Reporting Database

Content Management

Page 57: Nordic Sugcon xdb crash course

Collect Process Report

Page 58: Nordic Sugcon xdb crash course
Page 59: Nordic Sugcon xdb crash course

OrganizersSponsor

Thanks to our… &…