TrueSight Capacity Optimization supports Oracle and PostgreSQL databases. BMC recommends that you install the TrueSight Capacity Optimization components and the database on separate servers.
You must validate these databases for your environment by performing an appropriate sizing exercise. Use the following information to understand the requirements for these databases.
Oracle database requirements
This section explains the requirements for the TrueSight Capacity Optimization database server that uses an Oracle database:
- Operating system: Any 64-bit operating system supported by the Oracle database.
- Oracle Database versions: The following versions are currently supported:
|11g R2 and later|
1 - Oracle version 184.108.40.206.0 does not work as expected (caused by Oracle bug 20508819). You can perform one of the following tasks as a workaround:
- Add Oracle instance init parameter _optimizer_aggr_groupby_elim=false to use Oracle version 220.127.116.11.0.
- Use Oracle version 18.104.22.168.0 or 22.214.171.124.
- The Database Server supports both the multi-tenancy options for Oracle 12c R1 and later: Container Database (CDB) and Pluggable Database (PDB).
- You must use Oracle 12c R1 and later with CentOS 7.x, Red Hat Enterprise Linux 7.x, and Oracle Enterprise Linux 7.x because Oracle 11g R2 is not supported on these operating systems.
- The Oracle Advanced Compression (OAC) feature is not recommended for use with a TrueSight Capacity Optimization Database Server. Activating this feature can have a significant impact on performance in terms of ETL execution time and data warehouse (DWH) data processing time.
- The Oracle Spatial that is installed on a TrueSight Capacity Optimization database instance affects the database CPU performance when using the truncate command on the temporary tables and drop tables. Therefore, BMC recommends avoiding the installation of Oracle Spatial on a TrueSight Capacity Optimization database instance. If you need Oracle Spatial for any other purposes, contact Oracle for the possible workarounds to improve the CPU performance.
Configuration requirements for Oracle database
Consider the following configuration requirements for Oracle database:
- Character set: AL32UTF8 — As part of Internationalization support and Unicode standard alignment, use this character set to prevent issues related to wrong character encoding during the integration of heterogeneous data sources.
- Oracle Partitioning: Install and enable Oracle Partitioning on the Database Server, especially for very large databases to ensure maximum performance.
- Oracle Java Virtual Machine (JVM): Install and enable Oracle JVM on the Database Server.
Configuration recommendations: Review the following Oracle configuration recommendations. These recommendations are based on technical considerations. Refer to the latest Oracle documents for details about any licensing restrictions.
TrueSight Capacity Optimization database schema uses four tablespaces: two for capacity data and two for indexes. For better performance, BMC recommends that the two data tablespaces be allocated on a different physical device than the two index tablespaces.
The default schema owner user is BCO_OWN. This user must have permissions on the four tablespaces and also on a temporary tablespace.
The schema uses global temporary tables that can reach considerable size.
Allocate a minimum of 3 GB for the temporary tablespace and 3 GB for the UNDO tablespace.
Use automatic memory management. Configure only the limit, and Oracle will manage the SGA and PGA.
Set the memory limit at 80 percent of the total memory.
By default, the Oracle instance sets the listener port to 1521. You can also set a different port according to Oracle guidelines.
Set the max sessions parameter to 300. This is the minimum requirement.
For very large deployments involving many Application Servers and ETL engines, you must increase the max sessions parameter to avoid saturation.
The default block size should be used. BMC recommends you to set a block size between 8 KB and 32 KB.
BMC recommends running the database in archive logging (ARCHIVELOG) mode and using Oracle best practices:
The size and frequency needed for the archive logs depends linearly on the size of the TrueSight Capacity Optimization database in terms of daily population load. As a rough estimation, provide 2.5 GB/hour for every 10 million rows loaded per day. For example, provide 5 GB/hour for a TrueSight Capacity Optimization database sized for 20 million rows per day.
Archive logging allows you to do a full backup without shutting down TrueSight Capacity Optimization. Daily shutdown for backup can cause problems to application tasks and services: no task can be executed in the database maintenance window, so you would have to reconfigure OOTB tasks. If the database is shut down, TrueSight Capacity Optimization will log several exceptions and send the administrator an email, so you would also have to stop TrueSight Capacity Optimization components before turning off the database.
Allocate at least 4 GB for the REDO logs. You must allocate enough archive space to accommodate the REDO logs for the backup period. For example, if backup is taken every six hours, the archive space will need to be at least 24 GB.
Recommended number of groups and file size: Six groups of REDO logs, with redo file size of 512MB.
|Auto space advisor||If you schedule this task, it is recommended that you schedule it for execution on a weekly basis.|
|Gather database statistics||If you schedule this task, it is recommended that you schedule it for execution after every 2 or 3 days.|
Oracle client requirements
Computers or VMs that host the Application Server or ETL Engine components must be running a supported Oracle client with the following packages, components, and configurations:
Oracle Client install options1
Oracle Client configurations
1 These options are available only while performing a Custom installation of the Oracle Client.
- TrueSight Capacity Optimization does not support the Oracle Instant Client.
- 11.x Oracle clients are not supported. If you are using any of the 11.x Oracle clients, you must upgrade the client to 12.1 or later versions.
PostgreSQL database requirements
This section explains the requirements for the TrueSight Capacity Optimization database server that uses a PostgreSQL database:
Operating system: Any 32- or 64-bit operating system supported by the PostgreSQL Database Server
PostgreSQL Database versions: Versions 11.x, 10.x, 9.6, 9.5, 9.4 and 9.3.6 are currently supported. BMC recommends you to install PostgreSQL version 10.0 or later for improved performance.
To migrate the data from PostgreSQL 9.x to 10.x or 11.x, see Migrating the data from PostgreSQL 9.x to 10.x and later.
The current compatibility offering for the PostgreSQL database supports large environments handling up to 80 million records per day.
Configuration recommendations: Review the following PostgreSQL configuration recommendations.
|Schema and Tablespaces|
BMC recommends adding the following parameters to the configuration of the Database Server in postgresql.conf or equivalent file:
Note: For PostgreSQL 9.4 and earlier, add
Some recommendations for improving the PostgreSQL database performance:
- Use PGTune to configure the PostgreSQL database. For more information, see .
- Ensure that the database is managed by official PostgreSQL database administrators.
For information about deploying TrueSight Capacity Optimization in a PostgreSQL environment, see .
For information about the backup recommendations for a PostgreSQL database, see the
Running the database on a virtual machine
The TrueSight Capacity Optimization database can be set up by using a virtual machine, instead of a physical machine.
- Ensure that resources are available to the TrueSight Capacity Optimization database, similar to mission critical workloads hosted on virtual machines. The choice of hypervisor and its configuration determines the levels of contention with other virtual machines sharing the CPU, memory, and other resources.
- For TrueSight Capacity Optimization, I/O throughput is a key sizing parameter, as explained in Sizing considerations. Configure the hypervisor layer to ensure that the required I/O throughput is available.