Skip to main content

         This documentation site is for previous versions. Visit our new documentation site for current releases.      

Optimize a property from the user interface

Updated on July 8, 2022

Use the Property Optimization tool to improve data retrieval performance from your Pega database. This tool creates a dedicated database column for a selected property and starts a background process to populate the values for the new column from existing BLOB values. This eliminates the need to read the BLOB when fetching property data.

Before you begin: The following restrictions apply when selecting a property for optimization:
  • You cannot optimize a transient property, because the column values would all be null.

  • You cannot optimize properties in classes mapped to pr_other.

  • You can only expose properties that are of a Single Value type.

To use the Property Optimization tool your environment must meet these prerequisites:

  • Your access group must have the SchemaPropertyOptimization privilege.
  • The dynamic system setting database/AutoDBSchemaChanges must be true.
  • The Pega-RulesEngine agent System-Job-PropertyOptimizationpyOptimization must be enabled for background processing.
  • The Data-Admin-DB-Name data instance named PegaRULES must identify the credentials, for either the primary database username and password, or the alternate Admin username and password, that allow the ALTER TABLE and CREATE TABLE functions for the database.
You can also use this tool to expose the values of an embedded property by automatically creating a concrete Index- class, properties for the new class, and a Declare Index rule that maintains the indexes. A background process creates the instances of the new Index- class.

When you meet the prerequisites you can use the Property Optimization tool using the Application Explorer.

Note: Background processing to populate the new column data might take some time, depending on volume, and cause computations in your applications that cause the property value to fail or produce incorrect results until all background processing is complete.

You can view the classes for which a property has been optimized on the Advanced tab of the Property form. To optimize a selected property, complete the following steps.
  1. Using the Application Explorer, enter the class for the property you want to optimize and then expand the Data Model node and the Property list.
  2. Right-click a property name and click Optimize for reporting.
  3. Select the tables in which you want to create a dedicated database column for this property. You must select at least one table.
  4. If the property is embedded, specify the RuleSet and Version to contain the new Index- class, the properties in that class, and the Declare Index rule.
  5. Select whether to optimize the property now or later. If you select later, click the calendar icon to select a date within seven days of the current date to optimize the property.
  6. Click Next.
  7. Review the tables to which the property column will be added and the classes that will be mapped to each table.
  8. Click Next.
  9. Click Finish.
Result: You can view the status of your background job by clicking ConfigureSystemDatabaseColumn Population Jobs.
  • Exposing properties and populating database columns

    You can expose a property as a database column, and populate the new column by extracting values from the Storage Stream (BLOB or pzPVStream) column using the Property Optimization tool in a development system. You can also use this tool to "expose" values of an embedded property by automatically creating an appropriate Index- class and Declare Index rule.

  • Viewing column population jobs

    You can view the status of column population jobs running in the background that were started by the Property Optimization tool. This tool populates newly exposed database table columns with data values from the BLOB column.

  • Canceling column population jobs

    You can cancel a column population job that was started by the Property Optimizer tool.

Have a question? Get answers now.

Visit the Support Center to ask questions, engage in discussions, share ideas, and help others.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best. is not optimized for Internet Explorer. For the optimal experience, please use:

Close Deprecation Notice
Contact us