The properties panel in SSDS for a Measure Group has two properties I'd like to learn more about: EstimatedRows and EstimatedSize. There seems to be little documentation on either of these.
I did find that I can run the Aggregation Design Wizard and it will not only count the rows, but also automatically populate the EstimatedRows property in each Measure Group. So question #1, how is this property used by SSAS and is it documented anywhere?
In my testing cube the Measure Group's EstimatedSize property is read only (grayed out). The little documentation I've found implies I can/should set this property. And question #2, why is this readonly, and is there any documentation on its use?
(I am working with SQL Server 2016)
I agree with you that there is a lack of documentation for these properties, but i will try to give some information about them:
Referring to the SQL Server Analysis 2005 Performance Guide, which is a white paper released by Microsoft:
Once the aggregation design algorithm has identified the aggregation candidates, it performs a cost/benefit analysis of each aggregation. In order to make intelligent assessments of aggregation costs, the design algorithm analyzes statistics about the cube for each aggregation candidate. Examples of this metadata include member counts and fact table record counts. Ensuring that your metadata is up-to-date can improve the effectiveness of your aggregation design. You can define the fact table source record count in the EstimatedRows property of each measure group, and you can define attribute member count in the EstimatedCount property of each attribute.
I didn't find an official documentation for that, but while searching for this topic, i found the following answer mentioning:
The estimated row count (of each partition) is used by SSAS to determine the necessary storage space of your aggregation design.
Which means that the EstimatedSize
is calculated based on the EstimatedRows
property, which can explain why EstimatedSize
is read only.
On the other side, the following documentation is mentioning that MeasureGroup.EstimatedSize Property is used to:
Gets or sets the estimated size of a MeasureGroup
In addition, as you mentioned this property is not eligible in Visual studio.
Based on that, we can say that this property is not read only in the Microsoft.AnalysisServices.dll assembly, but it is not enabled in Visual studio because it is calculated based on EstimatedRows
property. You may be able to set its value when using AMO assemblies or when building an SSAS project programatically.
"Microsoft SQL Server 2008 Analysis Services Unleashed" book says:
EstimatedSize - Defines the amount of data, in bytes, which you expect to be loaded into the partition. This property helps Analysis Services determine the best strategy to use during partition processing.
EstimatedRows - Defines the number of records that you expect to be loaded into a partition. Similar to the EstimatedSize property, this property helps Analysis Services determine the best strategy to use during partition processing.
EstimatedRows - ...if you know the number of the rows that exist in the fact, you can help the system make better decisions when it chooses internal data structures for data storage and algorithms for their processing.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With