简体   繁体   中英

SSAS Measure Group EstimatedSize EstimatedRows

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:

How is this property used by SSAS and is it documented anywhere?

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.

Why is this readonly, and is there any documentation on its use?

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.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM