clsPartitionAnalyzer
Multidimensional database technology contains an inherent trade-off between precalculated aggregation storage requirements and online query process performance, as depicted in the following graph.
The higher the desired query performance, the more aggregations must be precalculated and stored.
A DSO object of ClassType clsPartitionAnalyzer encapsulates an algorithm for automatically designing a set of aggregations in a partition. It analyzes a partition’s schema and generates a collection of aggregations that improve query performance. You can run the analysis without constraints, or you can constrain the analysis in either of the following ways:
- Specify one or more GoalQueries that you want to optimize.
- Include existing aggregations or aggregations that should be preserved in the DesignedAggregations collection prior to running the analysis.
The steps in analyzing a partition are as follows:
- Initialize the analysis session using the InitializeDesign method.
- Specify one or more GoalQueries using the AddGoalQuery and PrepareGoalQueries methods. The resultant DesignedAggregations will optimize this set of GoalQueries. If no GoalQueries are specified, the analysis will yield a generalized optimization.
- Add one or more existing aggregations to the DesignedAggregations collection using the AddExistingAggregation method.
- Perform an initial analysis using the NextAnalysisStep method.
The analysis generates new aggregations that are added to the DesignedAggregations collection. It also returns the calculated percentage performance gain, aggregation storage requirements, and total number of aggregations created.
- Review the results of the analysis step and determine whether you want to perform another analysis iteration. Running subsequent analysis steps adds new aggregations to the DesignedAggregations collection and recalculates the percentage performance gain, aggregation storage requirements, and total number of aggregations created.
- Manually or programmatically determine at what point you want to conclude the analysis.
- (Optional) At the conclusion of running clsPartitionAnalyzer, optionally replace the partition’s aggregations with the DesignedAggregations.
- Close the analysis with the CloseAggregationAnalysis method.
An object of ClassType clsPartitionAnalyzer provides collections, methods, and properties through its own internal interface.
For more information, see About Decision Support Objects.
(c) 1988-1998 Microsoft Corporation. All Rights Reserved.