Scaling and configuring xDB Processing

Abstract

How to configure the xDB Processing roles, which analyse and aggregate collected data to make it usable for reporting purposes.

xDB Processing roles analyse and aggregate collected data to make it usable for reporting purposes. You can or configure multiple xDB Processing instances to meet your scaling requirements.

Use the Sitecore Installation Framework (SIF) or the Sitecore Azure Toolkit (SAT) to install the xDB Processing role. Refer to the installation guide for your version of the platform for more information.

The following table describes the ways you can scale the xDB Processing role:

Scaling option

Supported

Notes

Combined instance

Yes

The following combinations are supported:

Note

In a developer environment, all core roles can be combined into a single instance. This includes Content Management, Content Delivery, xDB Processing, xDB Reporting, and EXM Dispatch. This setup is not recommended in production.

Standalone instance

Yes

You can deploy xDB Processing as a standalone role.

High availability and failover

Yes

Multiple xDB Processing instances can process tasks in parallel from the Processing Pool and Processing Tasks databases. Load balancing is not required. All instances write to a single centrally located xDB Reporting database.

In most cases, the xDB Processing role does not require load balancing. However, the Content Management role uses a connection to a service end point hosted on the xDB Processing role to trigger a rebuild of the reporting database. You can choose to put multiple xDB Processing instances behind a load balancer to ensure that the Content Management role always has a connection to xDB Processing. Both instances can be active.

Horizontal scaling for load distribution

Yes

The following general recommendations apply to all scaling scenarios:

  • Deploy the xDB Processing role as close as possible to the xDB Reporting and Reference Data databases, and the xConnect Collection service. These databases and services are used during history processing and aggregation.

Note

In a developer environment, you can combine all Core roles into a single instance. This includes Content Management, Content Delivery, xDB Processing, xDB Reporting, and EXM Dispatch. We do not not recommended this setup in a production environment.

Consider the following performance tuning options:

The following general configuration tasks apply to the xDB Processing role:

The following tables list the topologies that include the xDB Processing role and how the role is packaged by default.

Sitecore Installation Framework

The xDB Processing role is available in the following default topologies for SIF:

Topology

Web Deploy Packages

Description

XP Single

Sitecore 9.X.X rev. XXXXXX (OnPrem)_xp0xconnect.scwdp.zip

Processing role is bundled with all other XP service roles.

XP Scaled

Sitecore 9.X.X rev. XXXXXX (OnPrem)_xp1cortexprocessing.scwdp.zip

Standalone instance of the Processing role service.

Sitecore Azure Toolkit

The xDB Processing role is available in the following default topologies for SAT:

Topology

Web Deploy Packages

Description

XP Single

Sitecore 9.X.X rev. XXXXXX (Cloud)_xp0xconnect.scwdp.zip

The Processing role is bundled with all other XP service roles.

xDB Single

XP Scaled

Sitecore 9.X.X rev. XXXXXX (Cloud)_xp1cortexprocessing.scwdp.zip

Standalone instance of the Processing role.

xDB Scaled