70-466 · Question #54
You are developing a SQL Server Analysis Services (SSAS) cube for the accounts department. You create a measure group named Exchange Rate that consists of measures pertaining to currency exchange rate
The correct answer is H. AverageOfChildren. AverageOfChildren is the correct semi-additive aggregation function for exchange rate measures because it computes the average of child member values along the time dimension rather than summing them.
Question
Exhibit
Options
- ASum
- BCount
- CMin
- DMax
- EDistinctCount
- FNone
- GByAccount
- HAverageOfChildren
- IFirstChild
- JLastChild
- KFirstNonEmpty
How the community answered
(36 responses)- C8% (3)
- D3% (1)
- E6% (2)
- H81% (29)
- K3% (1)
Why each option
AverageOfChildren is the correct semi-additive aggregation function for exchange rate measures because it computes the average of child member values along the time dimension rather than summing them.
Sum would add all exchange rate values across time periods together, producing a meaningless total rather than an average rate.
Count returns the number of records in the partition, not the average of the exchange rate values.
Min returns only the lowest exchange rate encountered, not the average.
Max returns only the highest exchange rate encountered, not the average.
DistinctCount counts unique values and does not compute an average.
None suppresses all aggregation, so the measure would not roll up to higher time granularities at all.
ByAccount uses the aggregation function defined on members of a linked account-type dimension, which is not applicable here without a matching account dimension configuration.
AverageOfChildren is a semi-additive aggregation function in SSAS that, when rolling up over time, returns the average of all child member values rather than their sum. For an exchange rate measure, summing rates across periods is semantically incorrect - an average rate is the meaningful value - so AverageOfChildren ensures that any rollup (e.g., from month to quarter) produces the correct average exchange rate over that interval.
FirstChild returns the value of the first child member in time - a snapshot behavior used for opening balances, not an average.
LastChild returns the value of the last child member in time - a snapshot behavior used for closing balances, not an average.
FirstNonEmpty returns the first child with a non-null value, which is a snapshot behavior not equivalent to averaging.
Concept tested: SSAS semi-additive AggregationFunction property for exchange rate measures
Source: https://learn.microsoft.com/en-us/analysis-services/multidimensional-models/define-semiadditive-behavior
Topics
Community Discussion
No community discussion yet for this question.
