This presentation will give you an introduction into Sitecore 7.5 (xDB) and insights of the new architecture introduced to optimize performance and scalability. This architecture overview includes the services, scalability, dataflow and the different components within Sitecore experience database.
8. Services
Session state
Collection
Processing
Reporting
• Provide session management services to the content delivery
and personalization components.
• Can be implemented by any ASP.NET session state store
provider that supports the Session_End event.
• Default session state mode supported in Sitecore xDB is inProc
ASP.NET
• Comes with a compatible provider for MongoDB and SQL
server.
10. Services
Session state
Collection
Processing
Reporting
• Generic framework for processing tasks (distributed computing).
• Extracts information from raw captured analytics data and
transforms it into a form suitable for use in analytics.
• Performs specific tasks on the collection database that involve
mass updates.
• The Aggregation process is implemented using a Sitecore
application instance connected to both the Collection database
and Reporting databases.
• For development you can also run on the same Sitecore instance
as other components. Configure processing or aggregation on
single or multiple dedicated servers to achieve higher
performance on high-traffic solutions.
11. Services
Session state
Collection
Processing
Reporting
Reporting Database (RDB)
• The analytics Reporting database (RDB) stores aggregated
information from the collection database optimized for fast
querying and reporting.
• Implemented in SQL Server.
Reporting Service
• The reporting serviceAPI allows you to execute queries and
extract information from the Collection Database and the
Reporting Database or any other database.
• Main goal is to gutter all information necesary for the report,
processing might be the combination of multilple datasources
12. Vertical scaling
• Dedicated server for each component
• We’re still implementing a lot of new
features.
• This is the start not the finish.
Multi-server environment
Single, dedicated servers for each software
component in the xDB
Vertical scaling
It is possible to increase
capacity by upgrading
individual hardware
components, depending on the
requirements of each
dedicated server
13. Horizontal scaling
• MultipleCD instances (multiple clusters).
• Dedicated session state servers
• NoSQL Collection database (MongoDB) for
storing contact and interaction data
• Multiple processing on multiple servers.
• MultipleCM and Reporting servers
• Multiple geographically distributed CD
clusters.
16. Reporting Service
Processing Service
Aggregation task
Reporting data flow overview
Collection Database
Report Optimized Data
Storage
Content Management
Experience Analytics Experience Analytics
Experience Dashboard
Experience Profile
17. Detailed reporting data flow
Collection Database
Reporting Database
Segmentation Index
Custom Data Source
ReportingService
Content Management
Processing
Service
Aggregation
task
Blue arrow : data fetched
Orange arrow : data pushed
Custom Reports
19. MongoDB databases
• Analytics database is the place to be.
• _history and _live databases are Sitecore
internal databases
• Local is MongoDB system database
20. Analytics Database collections overview
• Contacts
A contact is a person that uses one or more devices to interact with your
organization.
• Interactions
An interaction is the way in which a contact or customer communicates or
engages with your organization.
• Devices
A contact may use a device to interact with your organization.
• Automation States
Stores documents that keep track of the automation states of contacts.
• Other collections
Used internally by Sitecore for caching and processing.
21. Interaction collection
Each record in the interaction collection contains:
• references to the Contact (visitor).
• detailed data from one session (visit).
• the interaction page trail (pages).
27. Reporting database
The tables in the reporting database are simplified for performance optimization
and contain data from the collection Database needed for summary and trend
reports.
The reporting database contains Dimension and Fact tables.
29. The Fact table contains information about the metrics collected. A fact table can be used
by one or more reports.
The data in the fact tables are calculated by the aggregation task.
Fact tables
30. “It’s not what you make, it’s what you keep”
by Dan Solovay (Sitecore MVP)