Scaling and configuring the xConnect Collection Search role
The xConnect Collection Search service might experience high load from Marketing Automation Engine (due to contact and interaction lookups during plan and activity enrollment) or from EXM Dispatch.
Installation
Use the Sitecore Installation Framework (SIF) or the Sitecore Azure Toolkit (SAT) to install the xConnect Collection Search service role. Refer to the installation guide for your version of the platform for more information.
Scaling the xConnect Collection Search service
The following table describes the ways you can scale the xConnect Collection Search service:
Scaling option |
Supported |
Notes |
---|---|---|
Combined instance |
Yes |
The xConnect Collection Search service role can be combined with any other Experience Platform Service role. For example, you could combine the xConnect Collection Search service and the xConnect Collection service. Note In a developer environment, all XP service roles can be combined into a single instance. This setup is not recommended in production. |
Standalone instance |
Yes |
You can deploy xConnect Collection Search service as a standalone role. |
High availability and failover |
Yes |
You can fail over to a passive instance or set up multiple active instances behind a load balancer. |
Horizontal scaling for load distribution |
Yes |
You can set up multiple instances behind a load balancer. All instances must read from a single centrally located xDB Collection database (database sharding by geography is not supported) and xDB index. |
The following general recommendations apply to all scaling scenarios:
-
Deploy the xConnect Collection Search service as close as possible to the xDB Collection database and the xDB index. It is more important to reduce latency between the service, database, and index than the service and clients such as Content Delivery.
In a developer environment, you can combine all XP service roles into a single instance. This setup is not recommended in production.
Performance tuning tasks
Consider the following performance tuning options to reduce the xConnect Collection Search service response time:
-
If you are using the xDB Collection SQL provider, consider switching to the TVP (Table-Valued Parameters) execution strategy (used by default in 9.3). The TVP strategy significantly improves read/write performance.
NoteYou cannot use TVP with Always Encrypted, but you can and should still use TDE (Transparent Data Encryption) and TLS (Transport Layer Security).
-
Increase the size of data chunks returned from the repository. Increasing the settings reduces the number of requests to the database.
-
Review throughput from client applications – for example, adjust batch sizes and the frequency and schedule of requests.
We recommend that you monitor load and response times across the platform before choosing to scale a particular role. Performance issues might be the result of a bottleneck elsewhere in the system.
Security configuration tasks
Refer to the xConnect Collection Search of the Security guide.
Default topologies and packages
The following tables list the topologies that include the xConnect Collection Search role and how the role is packaged by default.
Sitecore Installation Framework
The xConnect Collection Search service is available in the following default topologies for the Sitecore Installation Framework (SIF):
Topology |
Web Deploy Packages |
Description |
---|---|---|
XP Single |
|
xConnect Collection Search is bundled with all other XP service roles. |
XP Scaled |
|
xConnect Collection Search is bundled with the xConnect Search Indexer. The indexer is installed as a Windows Service and is physically located in the |
Sitecore Azure Toolkit
The xConnect Collection Search service is available in the following default topologies for the Sitecore Azure Toolkit (SAT):
Topology |
Web Deploy Packages |
Description |
---|---|---|
XP Single |
|
xConnect Collection Search is bundled with all other XP service roles. |
XP Scaled |
|
xConnect Collection Search is bundled with the xConnect Search Indexer. The indexer runs as an Azure WebJob in the context of the xConnect Collection Search application. |