Indexing Engine CP Model: Custom Configuration - Rules

Rules define limits on certain characteristics of a selection of indexes, and are applied before optimizing for the specified goals. The order of rules does not matter.

Note that applying rules that are too restrictive may cause the model to return an error, if the rule cannot be fulfilled.

Maximum Per-Scan Cost Tolerance

Default value: Unlimited

The Maximum Per-Scan Cost Tolerance rule ensures that the cost of each scan is not worse than their best possible cost (taking into account a tolerance parameter).

If the tolerance were set to 0.5 (i.e., 50%), the cost of each scan would be assured to be no worse than 150% of their best possible cost. Suppose that the best cost of a certain scan is 20. With the tolerance set to 0.5, the cost of that scan in the solution could not be worse than 150% of 20, which is 30.

{ "Name": "Maximum Per-Scan Cost Tolerance", "Value": 10.0 }

Maximum Per-Scan Weighted Cost Tolerance

Default value: Unlimited

The Maximum Per-Scan Weighted Cost Tolerance rule ensures that the weighted cost of each scan is not worse than their best possible weighted cost (taking into account a tolerance parameter). See Maximum Per-Scan Cost Tolerance for an example.

{ "Name": "Maximum Per-Scan Weighted Cost Tolerance", "Value": 10.0 }

Maximum Number of Indexes

Default value: Unlimited

The Maximum Number of Indexes rule specifies a maximum number of indexes that can be selected by the model. This rule can be used in conjunction with the Minimize Number of Indexes goal.

{ "Name": "Maximum Number of Indexes", "Value": 16 }

Maximum Index Write Overhead

Default value: Unlimited

The Maximum Index Write Overhead rule specifies a maximum value for the total index write overhead of the indexes suggested by the model. This rule can be used in conjunction with the Minimize Index Write Overhead goal.

{ "Name": "Maximum Index Write Overhead", "Value": 1.0 }

Minimum Coverage

Default value: 0.0

The Minimum Coverage rule ensures that a portion of the coverable scans (at least as large as the value associated with this rule) are covered by the selected indexes. A coverable scan is a scan for which at least one index can provide coverage.

A scan is considered to be covered only if at least one of the selected indexes provides that scan with a cost improvement over its sequential read cost.

{ "Name": "Minimum Coverage", "Value": 0.95 }

Couldn't find what you were looking for or want to talk about something specific?
Start a conversation with us →