Monday, August 15, 2011

Dimension attribute, navigational attribute or display attribute?

When modeling the infocube, the decision to include the infoobject in the dimension object itself or either as a navigational or display attribute is influenced by
1) slowly changing dimension/historical data view
2) cleanliness of the master data

Display attributes values are stored in the dimension table itself and it has its advantage such as data will reflect data from the historical-truth perspective.The disadvantage is the data in the infocube has to be reloaded if there is unclean or changed of master data assignment to the value of the infoobject which happen quite frequently in a global alignment environment. If the impact of truncating the infocube and reload is too high, a new infoobject that refers to the same business object may be introduce to replace the one with unclean master data. The later one may be labelled as 'no longer in use'.

Navigational attribute values are not stored in the dimension table but in the attribute table of the characteristic used in the infocube. Any changes to the attribute value assignment of the infoobject does not require the realignment of infocube. It may however require realignment of the aggregate containing the navigational attribute. If the infoobject and its attribute values are used in hierarchy , the hierarchy may required to be drop before the attribute value can be changed.

If the value is stored as a display attribute, any changes on the value of the attribute of the infoobject won't impact the data in the infocube as the display attribute is not stored as SID in the dimension table.Display attribute does not support drill down reporting and it can only be displayed in the report.

Either it's navigational or display attribute, the report will always refer to the current value in the master data and modelling the infocube with this approach does not support historical-truth.

No comments:

Post a Comment