Unica Campaign is a marketing campaign management application. An installation of Unica Campaign consists of multiple components, including Unica Platform and Unica Campaign. The installation also relies on other tools such as web application servers and databases. All of these components have properties, features, and settings that you can configure to improve performance. Unica Campaign itself has a number of configuration properties that you can use to tune your installation for best performance.
Defining “best performance” is difficult. Every environment and implementation has different requirements. Unica Campaign performance can be affected by many factors, including hardware, software, and network configuration. Let’s read about some of the ways you can optimize it.
STEP1: Database tuning for Unica Campaign: DB2
A good starting point for tuning your configuration is to use the DB2 AUTOCONFIGURE command. This command generates values for parameters based on your responses to questions about workload characteristics. The AUTOCONFIGURE command calculates and displays initial values for the buffer pool size, database configuration, and database manager configuration parameters, with the option of applying these recommended values.
AUTOCONFIGURE USING MEM_PERCENT 60 WORKLOAD_TYPE MIXED NUM_STMTS 500 ADMIN_PRIORITY BOTH IS_POPULATED YES NUM_LOCAL_APPS 0 NUM_REMOTE_APPS 20 ISOLATION RR BP_RESIZEABLE YES APPLY NONE
Use database load utilities
You can improve performance significantly by using a database load utility for all data sources. Database load utilities are available from your database vendors. The basic procedure to configure Unica Campaign for use with a database loader is summarized below. Follow these steps for each data source.
- Create two load control file templates: one for adding records and one for appending records
- Create a script or executable to start the load utility.
- In Unica Campaign, go to Campaign|partitions|partition1| dataSources| and set the properties that begin with the word Loader. These properties identify the control file templates and indicate the location of the script or executable file.
Spread tablespaces across multiple disks
Recommendations: • Before you create the database, make sure that you have multiple disks to split the table space containers. This approach helps to minimize I/O and improve overall performance.
• Keep database containers and LOG files in different locations.
• Split table spaces across multiple disks and keep them separate from the LOG file disk. • Create a user temporary table space and split it across multiple disks.
• The LOGFILESIZ parameter defines the size of each primary and secondary log file. The default value of LOGFILSIZ is 1024, which might not be sufficient when deploying the Unica Campaign application and populating the data into the tables. Consider increasing the LOGFILSIZ, LOGPRIMARY, and LOGSECOND based on the number of transactions that you anticipate.
Example 1: User database
During performance testing, disk utilization on the User Database machine pertaining to I/O is observed to go up to 100%. The database has a tablespace with containers spanned over two disks. After tuning and spreading containers over a total of 8 disks, in certain cases, you may still see spikes, but the average consumption is brought below 20% while running 5 concurrent complex flowcharts.
Example 2: System database server
There is a possibility of Disk I/O contention on the Unica Campaign System database server as well. Depending on your flowchart, a large amount of data may be written to the UA_CONTACTHISTORY table. For example, say you are running five multiple concurrent complex flowcharts, which are writing a large amount of data to UA_CONTACTHISTORY simultaneously. In this case, spreading database table spaces across multiple disks can improve performance.
STEP2: Setting in-database optimization to improve flowchart performance
Using in-database optimization can improve flowchart performance. When in-database optimization is on, the processing is done on the database server and output is stored in temporary tables on the database server whenever possible. You can apply in-database optimization in two ways: globally and for individual flowcharts. The best practice is to turn off the global configuration setting and set the option at the flowchart level.\
- To adjust the option globally, at the partition level:a. Choose Settings > Configuration.
b. Choose Unica Campaign > partitions > partition[n] > server > optimization.
c. Set useInDbOptimization to TRUE (on) or FALSE (off).
- To override the option for an individual flowchart:a. Open a flowchart in Edit mode.
b. Open the Admin menu and select Advanced settings.
c. Select or clear Use In-DB optimization during flowchart run.
When you save and run the flowchart, in-database processing will be used whenever possible if you are using in-database optimization.
STEP3: Adjusting configuration properties in Unica Campaign to improve performance
You can adjust configuration properties in Unica Campaign and Unica Platform to improve performance.
- To access the configuration settings, choose Settings > Configuration.
- Adjust the following configuration properties.
Configuration properties that affect Unica Campaign performance
You can improve Unica Campaign performance by adjusting configuration properties.
STEP4: Troubleshooting Unica Campaign Performance
Performance depends on many factors, including your database and web server configuration, network connectivity, and Unica Campaign and Unica Platform configuration. The following list provides a number of suggestions that may help to improve performance. Use this list to quickly identify possible areas for improvement, so you can make adjustments and rule out possible causes. In cases where more information is available, each suggestion points to the appropriate guide where you can find detailed information.
Web application server
- If you are using WebSphere, check the JVM heap size specified in the WebSphere profile. Typically, an initial setting of 512 and a maximum of 1024 (or depending on the server configuration) should suffice.
- If you are using WebLogic, set the JVM memory heap size parameters to 1024 by adding the following line to the setDomainEnv script: Set MEM_ARGS=-Xms1024m – Xmx1024m -XX:MaxPermSize=256m
Check with your DBA to see if your database is heavily loaded with other applications.
- As described in the Unica Campaign Administrator’s Guide, configure database load utilities.
- If you created a new audience level, then your DBA created a table in the Unica Campaign system database to store response history for that audience level. Be sure the new table is indexed to improve performance.
There are many more ways to optimize your Campaign performance, you can reach out to us, and we will be happy to help.