nerdexam
Microsoft

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.

Build an analysis services database

Question

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 rates. One of the measures in this group is named Average Rate and it will be used to report the average currency exchange rate over time. Currently, the AggregationFunction property for the Average Rate measure is set to Sum. You need to ensure that Average Rate measure reports the average of the currency exchange rate over time. Which value should you select for the AggregationFunction property for the Average Rate measure? To answer, select the appropriate setting in the answer area.

Exhibit

70-466 question #54 exhibit

Options

  • ASum
  • BCount
  • CMin
  • DMax
  • EDistinctCount
  • FNone
  • GByAccount
  • HAverageOfChildren
  • IFirstChild
  • JLastChild
  • KFirstNonEmpty

How the community answered

(36 responses)
  • C
    8% (3)
  • D
    3% (1)
  • E
    6% (2)
  • H
    81% (29)
  • K
    3% (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.

ASum

Sum would add all exchange rate values across time periods together, producing a meaningless total rather than an average rate.

BCount

Count returns the number of records in the partition, not the average of the exchange rate values.

CMin

Min returns only the lowest exchange rate encountered, not the average.

DMax

Max returns only the highest exchange rate encountered, not the average.

EDistinctCount

DistinctCount counts unique values and does not compute an average.

FNone

None suppresses all aggregation, so the measure would not roll up to higher time granularities at all.

GByAccount

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.

HAverageOfChildrenCorrect

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.

IFirstChild

FirstChild returns the value of the first child member in time - a snapshot behavior used for opening balances, not an average.

JLastChild

LastChild returns the value of the last child member in time - a snapshot behavior used for closing balances, not an average.

KFirstNonEmpty

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

#AggregationFunction#AverageOfChildren#exchange rate measures#semi-additive measures

Community Discussion

No community discussion yet for this question.

Full 70-466 Practice