SlideShare ist ein Scribd-Unternehmen logo
WE ARE AN ENTERPRISE TECHNOLOGY PARTNER
Coders Center sp. z o.o.
Plac Solny 15
50-062 Wroclaw/Poland
contact@coders.center
+48 71 300 1245
Sitecore xDB – Architecture and Configuration
2
Tomasz Juranek – Sitecore Developer/Architect @ Coders Center
Certificated Sitecore Developer since 2012. For last 5 years has worked on several
Sitecore project for big brands around the Europe.
What is Experience Platform?
Sitecore Experience Platform is (customer or developer POV):
• Mongo
• No SQL, xDB
• Content personalization
• Analytics Component
• Marketing Tools
• Customer Engagement
• Reports
• User Profiles
• Big Data
• Framework
• Architecture
• New DMS, CEP
• Different approach?
3
What Experience Platform do, what is the role of xDB
Experience Platform:
The combination of Sitecore CMS, xDB, and other experience marketing applications.
xDB:
The Sitecore Experience Database (xDB) collects all your customer interactions from all
channel sources in a central, big data repository.
xDB connects interaction data to create a comprehensive, unified view of each individual
customer, and makes the data available to marketers to manage the customer
experience in real time.
4Experience Platform Glossary:
https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/experience_platform_glossary
How Experience Platform works from visitor perspective
When a contact interacts with the website, the xDB collects all contact and the interaction data. This data flows through the xDB in the following
sequence:
5
1. A contact decides to interact with a website.
2. Depending on the geographic location of the contact, the xDB
redirects their visit to the closest cluster (data center) through
DNS configuration.
3. Load-balancing software directs the contact to an appropriate
Sitecore content delivery server.
4. Contacts stay connected to the same cluster even if they
switch devices or use another browser (session transfer).
5. Sitecore uses session state for storing information about the
current contact interaction, contact state, and any other
related data
6. On session end, Sitecore flushes this data to the collection
database and schedules it for processing.
Session transfer:
https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/server_considerations/server_clusters_and_transferring_contact_sessions
Session states in Experience Platform
• Private session state collects data of the interactions (visted pages) and the devices used by the contact.
• Shared session state data includes all data that is unique to a contact and that can be shared across simultaneous sessions, such as contact
details (available for personalization) and any triggered engagement automation states.
• Private and shared session providers are configured in web.config and can be InProcess (by default ASP.Net in memory), MongoDB or SQL
Server
• On single standalone CD server shared session state is still useful for handling concurrent visits, by the same contact from different devices
• On CM server use inProc
6
Session states:
https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/session_state/session_state
time
Session of Visit 2
(private)
Shared session state for Contact session
Session of Visit 1
(private)
sessions
{
timeout
timeout
Expires 1 minute after
last session ends
{
{
Contact Identification
New visit starts with unidentified contact (Anonymous in Experience Profile):
• Identifier (GUID) and device/browser data only.
• Connection between contact and device is stored in a cookie. Clearing cookies in the browser breaks the connection.
Unidentified contacts became identified by providing more data e.g.
• Filling WFFM forms
• Clicking EXM email link
• Login form or other custom code, using Sitecore.Analytics.Tracker.Current.Session.Identify(string id);
When xDB identifies a contact, it merges the unidentified contact with the identified contact.
• All the information stored in these contact records merge into one record. The old contact record is removed and replaced
with a reference to the updated contact record.
• Typical scenario: Double Opt-In, where user registers on one device and clicks confirmation link on different one.
7
Contact merge:
https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/contacts/merge_contacts
Mongo Collections - Contacts
8
own
List Manager entry, e.g. for EXM
Personal Data from WFFM form
• xDB stores all visitors including anonymous
• Contact vs User from Membership database
• Contact can be easily extended with custom fields (Contact Facets)
How to create custom contact facet:
https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/contacts/create_a_custom_contact_facet
Mongo Collections - FormData
9
• WFFM has built-in actions to save contact data into xDB and link with User in Membership database.
• Form data can be exported to Excel or CSV in Sitecore back-office.
• Form fields on website can be prefilled with data from xDB Contact (check „Rules” in Form Designer).
Mongo Collections - Interactions
10
• To speed up the testing set short session timeout, or use Session.Abandon();
Mongo Collections – Interactions (Pages)
11
xDB Data Aggregation
1. After session ends, the latest interactions are saved to the collection database.
12Architecture overview:
https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/platform/architecture_overview
2. Interaction data is added to the processing pool for aggregation.
3. An agent worker picks up the interaction from the processing pool and hands it on to an
aggregator.
4. The aggregator pushes the interaction through the aggregation pipeline and converts the
data into a form suitable for the reporting database (reduced and easy to query).
5. Once the data is converted into the correct format, it is merged into existing reporting
data that is stored in the SQL reporting database, keeping the reporting database
continuously in sync with the latest interactions on the website
7. Gathered data is presented to marketers in Sitecore reporting applications via Reporting API
Data for Experience Platform reports (Reporting API)
13
Reporting API description
https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/platform/reporting_architecture
• Reporting database – a Microsoft SQL Server database
that contains fact and dimension tables of aggregated
data from the collection database
• Reporting Service – queries the reporting database
(SQL) and the collection database (Mongo) to fetch
report data
• Reporting server – a Sitecore server that hosts the
Reporting Service
* Names may be confused: Legacy Analytics SQL db vs Analytics Collection in Mongo vs Reporting connection string
Data for Experience Platform reports (Reporting Apps)
14
Loaded from Analytics index:
Loaded directly from Mongo DB:
Loaded from Analytics index, SQL Reporting db:
Where Experience Platform stores visitor data - Summary
Cookie
• A cookie is used to identify the device that a contact uses to interact with a website.
In this way, you can identify the device if the contact returns using the same device.
Private and shared session:
• Interactions and devices
• Contact Personal information and identifier
• Contact Behavior profile (Contact's past profiles and personas matches)
• Key Behavior Cache in Sitecore 8.1 (Recent X contact’s activities)
• Data from WFFM forms
• Engagement automation states
Mongo DB
• All the visit and contact data persisted in collections
SQL Reporting Db
• Aggregated and grouped analytics data
Analytics Index
• Most important data is indexed for quick access
15Key Behavior Cache:
https://doc.sitecore.net/sitecore_experience_platform/digital_marketing/personalization/historical_personalization/key_behavior_cache
16
Typical Sitecore CMS infrastracture
Customers typically don’t use analytics features from previous Sitecore versions. But they want to migrate to Sitecore 8.x
because of Experience Platform
17
Recommended Experience Platform infrastracture
Good starting point, divide into roles to allow scaling
18
Scaled Experience Platform infrastracture
To fulfil SLA and performance requirements
19
Minimal Experience Platform infrastracture
Standalone, all-in-one configuration same as for typical Sitecore CMS
Scalability options:
https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/platform/scalability_options
Experience Platform servers configuration
Possible Sitecore server roles (features) in the platform:
• Content Delivery Server
• Content Management Server
• Processing Server
• Reporting Server
Each server role it’s a Sitecore instance with different configuration:
• Several configuration files in /Include folder have to be enabled/disabled per server role
• Different database access per server role
• Server roles can be mixed, eg Reporting/CM, or Processing/Reporting on same server
• It’s flexible, can be easily extended horizontally (add more servers to perform each activity)
Additionally setup Mongo DB for Collection and Session databases (optionally on SQL Server)
20
Server configuration:
https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/configuring_servers/configuring_servers
21
Experience Platform possible problems
• Limited developers and community knowledge comparing to CMS
• Limited customer knowledge
• Typically compare Sitecore to their previous CMS
• Don’t know what Experience Platform has to offer
• Customer budget and project plan:
• Usually CMS focused
• Experience features need to be developed as well!
• Responsibility for analytics/personalization/marketing features:
• Customer (they know their business), or implementation partner?
• Hard to say, due to limited knowledge, budget and wrong planning
• Sitecore upgrades are more complicated comparing to CMS-only:
• Experience Platform is changing a lot, comparing to stable CMS
• A lot of different config files per server role
• Related with WFFM and EXM modules
• More complicated architecture:
• Higher hardware costs
• No MongoDB experience in typical corporate IT department
• Solr is must on scaled environment
Solr on processing server:
https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/configuring_servers/configure_a_processing_server
Thank you very much for your attention
22

Weitere ähnliche Inhalte

Was ist angesagt?

Making Rational HATS a Strategic Investment
Making Rational HATS a Strategic InvestmentMaking Rational HATS a Strategic Investment
Making Rational HATS a Strategic Investment
Strongback Consulting
 
A Crash Course on Xdb - Sugcon North America
A Crash Course on Xdb - Sugcon North AmericaA Crash Course on Xdb - Sugcon North America
A Crash Course on Xdb - Sugcon North America
Todd Mitchell
 
Sitecore enhancing content author experience
Sitecore enhancing content author experienceSitecore enhancing content author experience
Sitecore enhancing content author experience
Anindita Bhattacharya
 
IBM Innovate 2013: Making Rational HATS a Strategic Investment
IBM Innovate 2013: Making Rational HATS a Strategic InvestmentIBM Innovate 2013: Making Rational HATS a Strategic Investment
IBM Innovate 2013: Making Rational HATS a Strategic Investment
Strongback Consulting
 
Oracle Webcenter Suite Overview
Oracle Webcenter Suite OverviewOracle Webcenter Suite Overview
Oracle Webcenter Suite Overview
Eslam Hafez
 
Fuel Good 2018: What's New and Coming Up in D365 CRM?
Fuel Good 2018: What's New and Coming Up in D365 CRM?Fuel Good 2018: What's New and Coming Up in D365 CRM?
Fuel Good 2018: What's New and Coming Up in D365 CRM?
Sparkrock
 
Websphere Portal
Websphere PortalWebsphere Portal
Websphere Portal
dominion
 
SharePoint Programming Basic
SharePoint Programming BasicSharePoint Programming Basic
SharePoint Programming Basic
Quang Nguyễn Bá
 
SPCA2013 - Upgrade to SharePoint 2013 - A Cautioned Approach
SPCA2013 - Upgrade to SharePoint 2013 - A Cautioned ApproachSPCA2013 - Upgrade to SharePoint 2013 - A Cautioned Approach
SPCA2013 - Upgrade to SharePoint 2013 - A Cautioned Approach
NCCOMMS
 
Visio Services in SharePoint 2010
Visio Services in SharePoint 2010Visio Services in SharePoint 2010
Visio Services in SharePoint 2010
Alexander Meijers
 
SPCA2013 - Best Practices & Considerations for Designing Your SharePoint Logi...
SPCA2013 - Best Practices & Considerations for Designing Your SharePoint Logi...SPCA2013 - Best Practices & Considerations for Designing Your SharePoint Logi...
SPCA2013 - Best Practices & Considerations for Designing Your SharePoint Logi...
NCCOMMS
 
IBM WebSphere Portal References Education
IBM WebSphere Portal References EducationIBM WebSphere Portal References Education
IBM WebSphere Portal References Education
Dvir Reznik
 
WebSphere Portal Technical Overview
WebSphere Portal Technical OverviewWebSphere Portal Technical Overview
WebSphere Portal Technical Overview
Vincent Perrin
 
IBM WebSphere Portal 6.1 Preview - What's New
IBM WebSphere Portal 6.1 Preview - What's NewIBM WebSphere Portal 6.1 Preview - What's New
IBM WebSphere Portal 6.1 Preview - What's New
Dvir Reznik
 
Sharepoint2
Sharepoint2Sharepoint2
Sharepoint2
LiquidHub
 
Driving End User Adoption in SharePoint 2013 & 2010 - EPC Group
Driving End User Adoption in SharePoint 2013 & 2010 - EPC GroupDriving End User Adoption in SharePoint 2013 & 2010 - EPC Group
Driving End User Adoption in SharePoint 2013 & 2010 - EPC Group
EPC Group
 
TechEd Africa 2011 - OFC307: Architecting a Disaster Tolerant and Highly Avai...
TechEd Africa 2011 - OFC307: Architecting a Disaster Tolerant and Highly Avai...TechEd Africa 2011 - OFC307: Architecting a Disaster Tolerant and Highly Avai...
TechEd Africa 2011 - OFC307: Architecting a Disaster Tolerant and Highly Avai...
Michael Noel
 
SharePoint and Azure - A Match Made in the Clouds
SharePoint and Azure - A Match Made in the CloudsSharePoint and Azure - A Match Made in the Clouds
SharePoint and Azure - A Match Made in the Clouds
Shailen Sukul
 
SharePoint 2013 Sneak Peek
SharePoint 2013 Sneak PeekSharePoint 2013 Sneak Peek
SharePoint 2013 Sneak Peek
Shailen Sukul
 
SharePoint Saturday Kansas 2015 - Building Killer Office365 Public Sites
SharePoint Saturday Kansas 2015 - Building Killer Office365 Public SitesSharePoint Saturday Kansas 2015 - Building Killer Office365 Public Sites
SharePoint Saturday Kansas 2015 - Building Killer Office365 Public Sites
Brian Culver
 

Was ist angesagt? (20)

Making Rational HATS a Strategic Investment
Making Rational HATS a Strategic InvestmentMaking Rational HATS a Strategic Investment
Making Rational HATS a Strategic Investment
 
A Crash Course on Xdb - Sugcon North America
A Crash Course on Xdb - Sugcon North AmericaA Crash Course on Xdb - Sugcon North America
A Crash Course on Xdb - Sugcon North America
 
Sitecore enhancing content author experience
Sitecore enhancing content author experienceSitecore enhancing content author experience
Sitecore enhancing content author experience
 
IBM Innovate 2013: Making Rational HATS a Strategic Investment
IBM Innovate 2013: Making Rational HATS a Strategic InvestmentIBM Innovate 2013: Making Rational HATS a Strategic Investment
IBM Innovate 2013: Making Rational HATS a Strategic Investment
 
Oracle Webcenter Suite Overview
Oracle Webcenter Suite OverviewOracle Webcenter Suite Overview
Oracle Webcenter Suite Overview
 
Fuel Good 2018: What's New and Coming Up in D365 CRM?
Fuel Good 2018: What's New and Coming Up in D365 CRM?Fuel Good 2018: What's New and Coming Up in D365 CRM?
Fuel Good 2018: What's New and Coming Up in D365 CRM?
 
Websphere Portal
Websphere PortalWebsphere Portal
Websphere Portal
 
SharePoint Programming Basic
SharePoint Programming BasicSharePoint Programming Basic
SharePoint Programming Basic
 
SPCA2013 - Upgrade to SharePoint 2013 - A Cautioned Approach
SPCA2013 - Upgrade to SharePoint 2013 - A Cautioned ApproachSPCA2013 - Upgrade to SharePoint 2013 - A Cautioned Approach
SPCA2013 - Upgrade to SharePoint 2013 - A Cautioned Approach
 
Visio Services in SharePoint 2010
Visio Services in SharePoint 2010Visio Services in SharePoint 2010
Visio Services in SharePoint 2010
 
SPCA2013 - Best Practices & Considerations for Designing Your SharePoint Logi...
SPCA2013 - Best Practices & Considerations for Designing Your SharePoint Logi...SPCA2013 - Best Practices & Considerations for Designing Your SharePoint Logi...
SPCA2013 - Best Practices & Considerations for Designing Your SharePoint Logi...
 
IBM WebSphere Portal References Education
IBM WebSphere Portal References EducationIBM WebSphere Portal References Education
IBM WebSphere Portal References Education
 
WebSphere Portal Technical Overview
WebSphere Portal Technical OverviewWebSphere Portal Technical Overview
WebSphere Portal Technical Overview
 
IBM WebSphere Portal 6.1 Preview - What's New
IBM WebSphere Portal 6.1 Preview - What's NewIBM WebSphere Portal 6.1 Preview - What's New
IBM WebSphere Portal 6.1 Preview - What's New
 
Sharepoint2
Sharepoint2Sharepoint2
Sharepoint2
 
Driving End User Adoption in SharePoint 2013 & 2010 - EPC Group
Driving End User Adoption in SharePoint 2013 & 2010 - EPC GroupDriving End User Adoption in SharePoint 2013 & 2010 - EPC Group
Driving End User Adoption in SharePoint 2013 & 2010 - EPC Group
 
TechEd Africa 2011 - OFC307: Architecting a Disaster Tolerant and Highly Avai...
TechEd Africa 2011 - OFC307: Architecting a Disaster Tolerant and Highly Avai...TechEd Africa 2011 - OFC307: Architecting a Disaster Tolerant and Highly Avai...
TechEd Africa 2011 - OFC307: Architecting a Disaster Tolerant and Highly Avai...
 
SharePoint and Azure - A Match Made in the Clouds
SharePoint and Azure - A Match Made in the CloudsSharePoint and Azure - A Match Made in the Clouds
SharePoint and Azure - A Match Made in the Clouds
 
SharePoint 2013 Sneak Peek
SharePoint 2013 Sneak PeekSharePoint 2013 Sneak Peek
SharePoint 2013 Sneak Peek
 
SharePoint Saturday Kansas 2015 - Building Killer Office365 Public Sites
SharePoint Saturday Kansas 2015 - Building Killer Office365 Public SitesSharePoint Saturday Kansas 2015 - Building Killer Office365 Public Sites
SharePoint Saturday Kansas 2015 - Building Killer Office365 Public Sites
 

Ähnlich wie Sitecore xDB - Architecture and Configuration

Sitecore User Group: Session State and Sitecore xDB
Sitecore User Group: Session State and Sitecore xDB Sitecore User Group: Session State and Sitecore xDB
Sitecore User Group: Session State and Sitecore xDB
nonlinear creations
 
Session State and Sitecore xDB
Session State and Sitecore xDBSession State and Sitecore xDB
Session State and Sitecore xDB
Harpreet Singh, PMP, ITIL
 
Sitecore 7.5 xDB oh(No)SQL - Where is the data at?
Sitecore 7.5 xDB oh(No)SQL - Where is the data at?Sitecore 7.5 xDB oh(No)SQL - Where is the data at?
Sitecore 7.5 xDB oh(No)SQL - Where is the data at?
Pieter Brinkman
 
Resume
ResumeResume
Syn framework 4.0 and sql server
Syn framework 4.0 and sql serverSyn framework 4.0 and sql server
Syn framework 4.0 and sql server
Eduardo Castro
 
2015-06-10 Ceus by IberianSPC - new options for SharePoint 2016 and Office 36...
2015-06-10 Ceus by IberianSPC - new options for SharePoint 2016 and Office 36...2015-06-10 Ceus by IberianSPC - new options for SharePoint 2016 and Office 36...
2015-06-10 Ceus by IberianSPC - new options for SharePoint 2016 and Office 36...
Patrick Guimonet
 
JOB PORTALProject SummaryTitle JOB-PORT.docx
JOB PORTALProject SummaryTitle    JOB-PORT.docxJOB PORTALProject SummaryTitle    JOB-PORT.docx
JOB PORTALProject SummaryTitle JOB-PORT.docx
christiandean12115
 
AX2012 Technical Track - Infrastructure, Davy Vliegen
AX2012 Technical Track - Infrastructure, Davy VliegenAX2012 Technical Track - Infrastructure, Davy Vliegen
AX2012 Technical Track - Infrastructure, Davy Vliegen
dynamicscom
 
Sitecore 9 - What's new?
Sitecore 9 - What's new?Sitecore 9 - What's new?
Sitecore 9 - What's new?
Adrian IORGU
 
ICS UserGroup - 2015 - Infrastructure Assessment - Analyze, Visualize and Opt...
ICS UserGroup - 2015 - Infrastructure Assessment - Analyze, Visualize and Opt...ICS UserGroup - 2015 - Infrastructure Assessment - Analyze, Visualize and Opt...
ICS UserGroup - 2015 - Infrastructure Assessment - Analyze, Visualize and Opt...
Christoph Adler
 
A.S.Sivaprakash
A.S.SivaprakashA.S.Sivaprakash
A.S.Sivaprakash
Siva Prakhash
 
Deep Dive into SharePoint Topologies and Server Architecture for SharePoint 2013
Deep Dive into SharePoint Topologies and Server Architecture for SharePoint 2013Deep Dive into SharePoint Topologies and Server Architecture for SharePoint 2013
Deep Dive into SharePoint Topologies and Server Architecture for SharePoint 2013
K.Mohamed Faizal
 
Web Based Investment Management System
Web Based Investment Management SystemWeb Based Investment Management System
Web Based Investment Management System
Mike Taylor
 
Citrix Store front planning guide
Citrix Store front planning guideCitrix Store front planning guide
Citrix Store front planning guide
Nuno Alves
 
engage 2015 - - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
engage 2015 -  - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...engage 2015 -  - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
engage 2015 - - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
Christoph Adler
 
session and cookies.ppt
session and cookies.pptsession and cookies.ppt
session and cookies.ppt
Jayaprasanna4
 
Web application-for-financial-and-economic-data-analysis3
Web application-for-financial-and-economic-data-analysis3Web application-for-financial-and-economic-data-analysis3
Web application-for-financial-and-economic-data-analysis3
Mike Taylor
 
Web application-for-financial-and-economic-data-analysis3
Web application-for-financial-and-economic-data-analysis3Web application-for-financial-and-economic-data-analysis3
Web application-for-financial-and-economic-data-analysis3
Mike Taylor
 
Web application-for-financial-and-economic-data-analysis3
Web application-for-financial-and-economic-data-analysis3Web application-for-financial-and-economic-data-analysis3
Web application-for-financial-and-economic-data-analysis3
Mike Taylor
 
Cloud Foundry Technical Overview
Cloud Foundry Technical OverviewCloud Foundry Technical Overview
Cloud Foundry Technical Overview
cornelia davis
 

Ähnlich wie Sitecore xDB - Architecture and Configuration (20)

Sitecore User Group: Session State and Sitecore xDB
Sitecore User Group: Session State and Sitecore xDB Sitecore User Group: Session State and Sitecore xDB
Sitecore User Group: Session State and Sitecore xDB
 
Session State and Sitecore xDB
Session State and Sitecore xDBSession State and Sitecore xDB
Session State and Sitecore xDB
 
Sitecore 7.5 xDB oh(No)SQL - Where is the data at?
Sitecore 7.5 xDB oh(No)SQL - Where is the data at?Sitecore 7.5 xDB oh(No)SQL - Where is the data at?
Sitecore 7.5 xDB oh(No)SQL - Where is the data at?
 
Resume
ResumeResume
Resume
 
Syn framework 4.0 and sql server
Syn framework 4.0 and sql serverSyn framework 4.0 and sql server
Syn framework 4.0 and sql server
 
2015-06-10 Ceus by IberianSPC - new options for SharePoint 2016 and Office 36...
2015-06-10 Ceus by IberianSPC - new options for SharePoint 2016 and Office 36...2015-06-10 Ceus by IberianSPC - new options for SharePoint 2016 and Office 36...
2015-06-10 Ceus by IberianSPC - new options for SharePoint 2016 and Office 36...
 
JOB PORTALProject SummaryTitle JOB-PORT.docx
JOB PORTALProject SummaryTitle    JOB-PORT.docxJOB PORTALProject SummaryTitle    JOB-PORT.docx
JOB PORTALProject SummaryTitle JOB-PORT.docx
 
AX2012 Technical Track - Infrastructure, Davy Vliegen
AX2012 Technical Track - Infrastructure, Davy VliegenAX2012 Technical Track - Infrastructure, Davy Vliegen
AX2012 Technical Track - Infrastructure, Davy Vliegen
 
Sitecore 9 - What's new?
Sitecore 9 - What's new?Sitecore 9 - What's new?
Sitecore 9 - What's new?
 
ICS UserGroup - 2015 - Infrastructure Assessment - Analyze, Visualize and Opt...
ICS UserGroup - 2015 - Infrastructure Assessment - Analyze, Visualize and Opt...ICS UserGroup - 2015 - Infrastructure Assessment - Analyze, Visualize and Opt...
ICS UserGroup - 2015 - Infrastructure Assessment - Analyze, Visualize and Opt...
 
A.S.Sivaprakash
A.S.SivaprakashA.S.Sivaprakash
A.S.Sivaprakash
 
Deep Dive into SharePoint Topologies and Server Architecture for SharePoint 2013
Deep Dive into SharePoint Topologies and Server Architecture for SharePoint 2013Deep Dive into SharePoint Topologies and Server Architecture for SharePoint 2013
Deep Dive into SharePoint Topologies and Server Architecture for SharePoint 2013
 
Web Based Investment Management System
Web Based Investment Management SystemWeb Based Investment Management System
Web Based Investment Management System
 
Citrix Store front planning guide
Citrix Store front planning guideCitrix Store front planning guide
Citrix Store front planning guide
 
engage 2015 - - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
engage 2015 -  - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...engage 2015 -  - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
engage 2015 - - 2015 - Infrastructure Assessment - Analyze, Visualize and Op...
 
session and cookies.ppt
session and cookies.pptsession and cookies.ppt
session and cookies.ppt
 
Web application-for-financial-and-economic-data-analysis3
Web application-for-financial-and-economic-data-analysis3Web application-for-financial-and-economic-data-analysis3
Web application-for-financial-and-economic-data-analysis3
 
Web application-for-financial-and-economic-data-analysis3
Web application-for-financial-and-economic-data-analysis3Web application-for-financial-and-economic-data-analysis3
Web application-for-financial-and-economic-data-analysis3
 
Web application-for-financial-and-economic-data-analysis3
Web application-for-financial-and-economic-data-analysis3Web application-for-financial-and-economic-data-analysis3
Web application-for-financial-and-economic-data-analysis3
 
Cloud Foundry Technical Overview
Cloud Foundry Technical OverviewCloud Foundry Technical Overview
Cloud Foundry Technical Overview
 

Kürzlich hochgeladen

WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Jeffrey Haguewood
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
jpupo2018
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 

Kürzlich hochgeladen (20)

WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
Project Management Semester Long Project - Acuity
Project Management Semester Long Project - AcuityProject Management Semester Long Project - Acuity
Project Management Semester Long Project - Acuity
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 

Sitecore xDB - Architecture and Configuration

  • 1. WE ARE AN ENTERPRISE TECHNOLOGY PARTNER Coders Center sp. z o.o. Plac Solny 15 50-062 Wroclaw/Poland contact@coders.center +48 71 300 1245
  • 2. Sitecore xDB – Architecture and Configuration 2 Tomasz Juranek – Sitecore Developer/Architect @ Coders Center Certificated Sitecore Developer since 2012. For last 5 years has worked on several Sitecore project for big brands around the Europe.
  • 3. What is Experience Platform? Sitecore Experience Platform is (customer or developer POV): • Mongo • No SQL, xDB • Content personalization • Analytics Component • Marketing Tools • Customer Engagement • Reports • User Profiles • Big Data • Framework • Architecture • New DMS, CEP • Different approach? 3
  • 4. What Experience Platform do, what is the role of xDB Experience Platform: The combination of Sitecore CMS, xDB, and other experience marketing applications. xDB: The Sitecore Experience Database (xDB) collects all your customer interactions from all channel sources in a central, big data repository. xDB connects interaction data to create a comprehensive, unified view of each individual customer, and makes the data available to marketers to manage the customer experience in real time. 4Experience Platform Glossary: https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/experience_platform_glossary
  • 5. How Experience Platform works from visitor perspective When a contact interacts with the website, the xDB collects all contact and the interaction data. This data flows through the xDB in the following sequence: 5 1. A contact decides to interact with a website. 2. Depending on the geographic location of the contact, the xDB redirects their visit to the closest cluster (data center) through DNS configuration. 3. Load-balancing software directs the contact to an appropriate Sitecore content delivery server. 4. Contacts stay connected to the same cluster even if they switch devices or use another browser (session transfer). 5. Sitecore uses session state for storing information about the current contact interaction, contact state, and any other related data 6. On session end, Sitecore flushes this data to the collection database and schedules it for processing. Session transfer: https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/server_considerations/server_clusters_and_transferring_contact_sessions
  • 6. Session states in Experience Platform • Private session state collects data of the interactions (visted pages) and the devices used by the contact. • Shared session state data includes all data that is unique to a contact and that can be shared across simultaneous sessions, such as contact details (available for personalization) and any triggered engagement automation states. • Private and shared session providers are configured in web.config and can be InProcess (by default ASP.Net in memory), MongoDB or SQL Server • On single standalone CD server shared session state is still useful for handling concurrent visits, by the same contact from different devices • On CM server use inProc 6 Session states: https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/session_state/session_state time Session of Visit 2 (private) Shared session state for Contact session Session of Visit 1 (private) sessions { timeout timeout Expires 1 minute after last session ends { {
  • 7. Contact Identification New visit starts with unidentified contact (Anonymous in Experience Profile): • Identifier (GUID) and device/browser data only. • Connection between contact and device is stored in a cookie. Clearing cookies in the browser breaks the connection. Unidentified contacts became identified by providing more data e.g. • Filling WFFM forms • Clicking EXM email link • Login form or other custom code, using Sitecore.Analytics.Tracker.Current.Session.Identify(string id); When xDB identifies a contact, it merges the unidentified contact with the identified contact. • All the information stored in these contact records merge into one record. The old contact record is removed and replaced with a reference to the updated contact record. • Typical scenario: Double Opt-In, where user registers on one device and clicks confirmation link on different one. 7 Contact merge: https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/contacts/merge_contacts
  • 8. Mongo Collections - Contacts 8 own List Manager entry, e.g. for EXM Personal Data from WFFM form • xDB stores all visitors including anonymous • Contact vs User from Membership database • Contact can be easily extended with custom fields (Contact Facets) How to create custom contact facet: https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/contacts/create_a_custom_contact_facet
  • 9. Mongo Collections - FormData 9 • WFFM has built-in actions to save contact data into xDB and link with User in Membership database. • Form data can be exported to Excel or CSV in Sitecore back-office. • Form fields on website can be prefilled with data from xDB Contact (check „Rules” in Form Designer).
  • 10. Mongo Collections - Interactions 10 • To speed up the testing set short session timeout, or use Session.Abandon();
  • 11. Mongo Collections – Interactions (Pages) 11
  • 12. xDB Data Aggregation 1. After session ends, the latest interactions are saved to the collection database. 12Architecture overview: https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/platform/architecture_overview 2. Interaction data is added to the processing pool for aggregation. 3. An agent worker picks up the interaction from the processing pool and hands it on to an aggregator. 4. The aggregator pushes the interaction through the aggregation pipeline and converts the data into a form suitable for the reporting database (reduced and easy to query). 5. Once the data is converted into the correct format, it is merged into existing reporting data that is stored in the SQL reporting database, keeping the reporting database continuously in sync with the latest interactions on the website 7. Gathered data is presented to marketers in Sitecore reporting applications via Reporting API
  • 13. Data for Experience Platform reports (Reporting API) 13 Reporting API description https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/platform/reporting_architecture • Reporting database – a Microsoft SQL Server database that contains fact and dimension tables of aggregated data from the collection database • Reporting Service – queries the reporting database (SQL) and the collection database (Mongo) to fetch report data • Reporting server – a Sitecore server that hosts the Reporting Service * Names may be confused: Legacy Analytics SQL db vs Analytics Collection in Mongo vs Reporting connection string
  • 14. Data for Experience Platform reports (Reporting Apps) 14 Loaded from Analytics index: Loaded directly from Mongo DB: Loaded from Analytics index, SQL Reporting db:
  • 15. Where Experience Platform stores visitor data - Summary Cookie • A cookie is used to identify the device that a contact uses to interact with a website. In this way, you can identify the device if the contact returns using the same device. Private and shared session: • Interactions and devices • Contact Personal information and identifier • Contact Behavior profile (Contact's past profiles and personas matches) • Key Behavior Cache in Sitecore 8.1 (Recent X contact’s activities) • Data from WFFM forms • Engagement automation states Mongo DB • All the visit and contact data persisted in collections SQL Reporting Db • Aggregated and grouped analytics data Analytics Index • Most important data is indexed for quick access 15Key Behavior Cache: https://doc.sitecore.net/sitecore_experience_platform/digital_marketing/personalization/historical_personalization/key_behavior_cache
  • 16. 16 Typical Sitecore CMS infrastracture Customers typically don’t use analytics features from previous Sitecore versions. But they want to migrate to Sitecore 8.x because of Experience Platform
  • 17. 17 Recommended Experience Platform infrastracture Good starting point, divide into roles to allow scaling
  • 18. 18 Scaled Experience Platform infrastracture To fulfil SLA and performance requirements
  • 19. 19 Minimal Experience Platform infrastracture Standalone, all-in-one configuration same as for typical Sitecore CMS Scalability options: https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/platform/scalability_options
  • 20. Experience Platform servers configuration Possible Sitecore server roles (features) in the platform: • Content Delivery Server • Content Management Server • Processing Server • Reporting Server Each server role it’s a Sitecore instance with different configuration: • Several configuration files in /Include folder have to be enabled/disabled per server role • Different database access per server role • Server roles can be mixed, eg Reporting/CM, or Processing/Reporting on same server • It’s flexible, can be easily extended horizontally (add more servers to perform each activity) Additionally setup Mongo DB for Collection and Session databases (optionally on SQL Server) 20 Server configuration: https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/configuring_servers/configuring_servers
  • 21. 21 Experience Platform possible problems • Limited developers and community knowledge comparing to CMS • Limited customer knowledge • Typically compare Sitecore to their previous CMS • Don’t know what Experience Platform has to offer • Customer budget and project plan: • Usually CMS focused • Experience features need to be developed as well! • Responsibility for analytics/personalization/marketing features: • Customer (they know their business), or implementation partner? • Hard to say, due to limited knowledge, budget and wrong planning • Sitecore upgrades are more complicated comparing to CMS-only: • Experience Platform is changing a lot, comparing to stable CMS • A lot of different config files per server role • Related with WFFM and EXM modules • More complicated architecture: • Higher hardware costs • No MongoDB experience in typical corporate IT department • Solr is must on scaled environment Solr on processing server: https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/xdb/configuring_servers/configure_a_processing_server
  • 22. Thank you very much for your attention 22