Purpose and effect of SSAS hierarchies?

雨燕双飞 提交于 2019-11-30 08:11:58
ic3

Not sure 100% the comments I will say applies to SSAS, but as we're both 100% MDX/XMLA compatible it's similar.

You may start by reading this and the many-to-many documentation.

The first difference between using hierarchies with levels and attributes is performance. You've two different scenarios for a drilldown (take [Asia] as a particular member and let's find all countries of [Asia]):

  • Using hierarchy with levels : [Asia].children()
  • Using attributes : ([Asia],[Countries])

The first option is trivial and very fast (the structure is in memory). The second one implies iterating though all countries and 'check' if they exist (aka are countries of [Asia]). This can be a pain for huge attributes (>100k). Once done, we need to go to our fact tables where each members has a set of associated fact rows. The version with a single hierarchy is again direct. The one with two might imply some additional internal operations -> all rows of [Asia] minus the ones of a particular country. Simplified version is also more handy for the cache.

Second, you define a 'natural' drilldown path that can be directly used in the GUI.

On top, you can add special aggregations types (First,Last, Min, Max...) that will take into account the structure of a given hierarchy.

There are successfully OLAP solutions that work without hierarchical structures but you've less features to play with for making a solution.

I hope it helps you understand these concepts better.

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!