Provisioning a Blue Prism database server
This guide provides guidance for the provisioning of a database server to host a Blue Prism database. The instructions and recommendations contained in this document should be considered as a guide only. There are a large number of options available when provisioning databases that may relate not only to database specific settings, but also the host instance, as well as all instances on a given server.
It is recommended that both industry standard best practice; and recommendations from an experienced database administrator are sought. These should be reviewed in light of the wider impact that they may have on the overall environment.
Blue Prism databases
The Blue Prism database is a central repository which holds process definitions and audit information as well as configuration data such as environment-wide system settings. The database is specific to a Blue Prism environment and therefore within an organisation there may be a requirement to host a number of databases based on:
- The number of independent production environments
- Requirements for development, test, staging and pre-production environments.
From a co-existence perspective Blue Prism databases may reside on a single SQL instance or conversely may each be situated on an independent instance. Additionally, subject to capacity and performance considerations, Blue Prism databases may share a SQL instance with other application databases.
Customizing the database
When considering directly interacting with the database or its schema, it is essential that you are aware of the following limitations and advice.
It is not supported to directly update databases created or provided for use with, or by, Blue Prism products. This includes adding, updating, modifying or deleting data; as well as making any changes to the database schema, including but not limited to adding new tables, changing table columns, changing indexes or foreign key constraints. Changes are only supported under instruction from Blue Prism Global Customer Support; or where provided in Blue Prism documentation and accompanied by a statement that endorses support when such changes are applies. The database schema, and the purpose and use of each column by Blue Prism is subject to change and should not be expected to remain consistent across Blue Prism versions.
Querying the database
It is not recommended to query the database manually or through use of third-party tools, however we recognize that there are some scenarios that may necessitate it; such as for reporting purposes. Where queries are run against the database(s), users are advised that it is their responsibility to:
- Review the complexity, cost, and frequency of queries to ensure that they do not impact or impede the performance or behavior of the system.
- Be aware of the queries and the frequencies and to proactively share the details with Global Customer Support when raising support tickets.
- Disable these queries if required as part of troubleshooting or when issues are being investigated.
- Permanently disable queries that are suspected of contributing or causing adverse behavior or performance.
Selecting a SQL Server/instance
When selecting the SQL Server or SQL Server instance to host the Blue Prism database(s) the following should be considered:
- Proximity of the SQL Server to the Blue Prism Application Server(s), and other Blue Prism resources, particularly when implemented across large or multi-site networks.
- The number of existing databases that share the underlying hardware (CPU, RAM etc.), the utilization of those databases, and the capacity available.
- If relevant, whether any existing SQL Server instances are already configured to offer high-availability or disaster recover capabilities (such as SQL Clustering, Replication, Mirroring etc.) which may be desirable for the production Blue Prism databases.
- Availability of disk space whilst also considering the level of resilience, performance and capacity for expansion (e.g. SAS disks versus SATA, RAID type, SAN based or direct attached storage etc.)