---
title: "xDB Processing"
slug: "xdb-processing"
abstract: "Overview of Sitecore xDB Reporting supported infrastructure, references, scaling, and privacy and security."
---
# xDB Processing

The xDB Processing role analyses and aggregates collected data to make into usable in reporting.

> [!warning]
> Processing servers do not handle direct requests. Ensure that you use Application Initialization so you can successfully start the Processing role after you recycle the application pool.
>
> If you do not do this, the Processing role will not be launched and its application pool may shut down due to inactivity.

<details>
<summary><h2>Supported infrastructure</h2></summary>

You can host the xDB Processing role on:

- IIS
- [Azure App Service](https://azure.microsoft.com/en-us/services/app-service/)

Refer to the [Sitecore compatibility table](https://kb.sitecore.net/articles/087164) for compatible versions.

</details>

<details>
<summary><h2>Reference structure</h2></summary>

The xDB Processing role has its place in the Sitecore reference structure. It can be referenced by other roles, and it can also reference other roles.

![Illustration showing the xDB Processing role's place in the Sitecore reference structure.](https://doc.sitecore.com/api/markdown-image/xp/en/developers/104/platform-administration-and-architecture/images/xDB_processing_91_plus.PNG)

### Referenced by

The xDB Processing role is referenced by the following roles:

- [Content Management](https://doc.sitecore.com/xp/en/developers/104/platform-administration-and-architecture/content-management--cm-.html "Content Management (CM)")

### References

The xDB Processing role references the following roles:

#### Storage roles

| Role name | Connection string name | Port | Type | Notes |
| --- | --- | --- | --- | --- |
| [Core database](https://doc.sitecore.com/xp/en/developers/104/platform-administration-and-architecture/core-database.html) | core | 1433 | SQL |  |
| [Security database](https://doc.sitecore.com/xp/en/developers/104/platform-administration-and-architecture/security-database.html) | security | 1433 | SQL |  |
| [Master database](https://doc.sitecore.com/xp/en/developers/104/platform-administration-and-architecture/master-database.html) | master | 1433 | SQL |  |
| [xDB Reporting database](https://doc.sitecore.com/xp/en/developers/104/platform-administration-and-architecture/xdb-reporting-database.html) | reporting | 1433 | SQL |  |
| [xDB Reporting database](https://doc.sitecore.com/xp/en/developers/104/platform-administration-and-architecture/xdb-reporting-database.html) (secondary) | reporting.secondary | 1433 | SQL |  |
| [xDB Reference Data database](https://doc.sitecore.com/xp/en/developers/104/platform-administration-and-architecture/xdb-reference-data-database.html) | xdb.referencedata | 1433 | SQL | Only used during history rebuild. |
| [xDB Processing Pools database](https://doc.sitecore.com/xp/en/developers/104/platform-administration-and-architecture/xdb-processing-pools-database.html) | xdb.processing.pools | 1433 | SQL |  |
| [xDB Processing Tasks database](https://doc.sitecore.com/xp/en/developers/104/platform-administration-and-architecture/xdb-processing-tasks-database.html) | xdb.processing.tasks | 1433 | SQL |  |

The following API key must be included in a secure production environment, and should match the key configure in the [Content Management](https://doc.sitecore.com/xp/en/developers/104/platform-administration-and-architecture/content-management--cm-.html "Content Management (CM)") role:

| Role | Connection string name | Type | Notes |
| --- | --- | --- | --- |
| xDB Processing | reporting.apikey | Unique string | Required if you use a dedicated xDB Processing role. |

#### Application roles

| Role name | Connection string name | Port | Type | Notes |
| --- | --- | --- | --- | --- |
| [xConnect Collection service](https://doc.sitecore.com/xp/en/developers/104/platform-administration-and-architecture/xconnect-collection-search-service.html) | xconnect.collection | 443 | HTTPS |  |

The following client certificates are required in a secure production environment:

| Role | Connection string name | Type | Notes |
| --- | --- | --- | --- |
| [xConnect Collection service](https://doc.sitecore.com/xp/en/developers/104/platform-administration-and-architecture/xconnect-collection-search-service.html) | xconnect.collection.certificate | Certificate |  |

#### Other

The xDB Processing role includes a reference to the Package Management Service via the `PackageManagementServiceUrl` connection string.

</details>

<details>
<summary><h2>Privacy and security</h2></summary>

The xDB Processing role handles personal data in the following ways:

- Reads contact and interaction data during aggregation and processing.

Refer to the [Security Guide](https://doc.sitecore.com/xp/en/developers/104/platform-administration-and-architecture/securing-experience-platform.html "Securing Experience Platform") for steps to secure the xDB Processing role.

> [!important]
> Do not write personal data to the [xDB Reporting database](https://doc.sitecore.com/xp/en/developers/104/platform-administration-and-architecture/xdb-reporting-database.html "xDB Reporting database") from custom contact or interaction aggregation processors or custom distributed processing workers.

### Assumptions

- Custom contact and interaction aggregation processors are not saving personal data to the [xDB Reporting database](https://doc.sitecore.com/xp/en/developers/104/platform-administration-and-architecture/xdb-reporting-database.html "xDB Reporting database").
- Custom processing workers are not saving personal data to the [xDB Reporting database](https://doc.sitecore.com/xp/en/developers/104/platform-administration-and-architecture/xdb-reporting-database.html "xDB Reporting database").
- Custom code and custom applications are not saving personal data to the [xDB Reporting database](https://doc.sitecore.com/xp/en/developers/104/platform-administration-and-architecture/xdb-reporting-database.html "xDB Reporting database").

</details>