The values of all aggregate properties and all Single Value
properties are stored in a BLOB column (the Storage Stream), usually in a compressed form. These properties cannot be retrieved for reports and can slow retrieval and processing in other operations. You can improve reporting and searching performance by optimizing, that is exposing, Single Value
properties as distinct columns; however, doing so might slow insert and update operations, depending on your hardware and software.
You can expose a property even after the property has values. You then need to copy values from the BLOB into the new column by using one of the Column Populator tools.
You can optimize properties in various ways, depending on whether you have a production environment or a development environment. Some tools expose but do not populate the new property with values; other tools expose and populate in one step.
In development systems where you have only a few Single Value
, top-level properties to expose, use the Property Optimization tool in Designer Studio. This tool exposes and populates newly exposed columns as a single step.
For more information, see Optimizing properties from the user interface.
To expose properties in a production system, use the Modify Schema wizard in Designer Studio, which exposes the property without immediately populating it with values. After exposing the property, populate it using one of the Column Populator tools.
You can also view schema, increase the size of columns, and generate an SQL text file that defines a table that can be used later to modify the schema. Use this wizard to review the current database table structure, understand class-to-database table mapping, and provide additional context. For more information, see Schema modification using the Modify Schema wizard.
After exposing a property with the Modify Schema wizard, populate the new database column using one of the command-line Column Populator tools.
The Column Inclusion field on the Property form indicates the opinion of the developer who created or updated the property as to whether the property might need to be exposed. This value does not affect any runtime behavior of the property. For more information, see Property form — Completing the Advanced tab.
Exposed properties that have been fully implemented are shown on the Database Class Mappings tab. For more information, see Database Class Mappings tab and Planning for property optimization.