Reports databases
Running reports impacts performance because of the high demand placed on database processing. To reduce the impact of report processing on the primary transactional workload, you configure selected reports to obtain data from a separate reports database (alternate database). This database is a replicated copy of all or part of the PegaDATA schema and is designed to offload reporting reads from the production database.
A reports database contains only a subset of the tables in the PegaDATA schema. Typically, you mirror only the tables required by report definitions that are configured to use an alternate reporting source, for example, when the report is saved with Prefer reporting data source if defined. This approach shifts demand from production to the replicated database. Data replication is configured by using database vendor tooling and capabilities, such as replication or read replicas, rather than Pega-based mechanisms.
Important considerations
As a Lead System Architect, apply the following considerations when using a reports database:
- Pega Platform does not create reporting tables automatically.
Work with a database administrator to create the reports database and determine the tables, indexes, and views to include.
- Replication is not automatic in Pega Platform.
Pega Platform does not synchronize data between the reports database and the primary PegaDATA database. Replication must be implemented and managed through database replication, led by a database administrator, or through mirroring mechanisms.
- Reporting data might not use real-time information.
The "freshness" of report results depends on the replication strategy (for example, asynchronous replication introduces lag).
- Understand reporting database resolution behavior.
Reporting database selection is influenced by:- Whether the report is saved with Prefer reporting data source if defined.
- Whether an alternate reporting database is configured for the report’s class or tables.
- Whether a default reporting database is configured for the database used by that class, such as mapping to PegaDATAReporting.
- You can disable the reports database usage globally.
Even if a report is configured to prefer a reporting source, you can prevent reports from using the reporting database by updating the configuration setting in prconfig.xml:
<env name = "database/useReportingDatabase" value="false" />
For more information about how to configure a reports database, see Specifying a data source for reports.
Check your knowledge with the following interaction: