Article Details

The many-to-many revolution

This is the introduction of a paper that describes how to leverage the many-to-many dimension relationships, a feature that debuted available with Analysis Services 2005. After introducing the main concepts, the paper discusses various implementation techniques in the form of design patterns: for each model, there is a description of a business scenario that could benefit from the model, followed by an explanation of its implementation.

Two separate downloads (available on SQLBI.EU project page) contain the full paper in PDF format and SQL Server database and Analysis Services projects with the same sample data used in the paper.

Analysis Services 2005 (SSAS 2005) introduced the capability to handle many-to-many relationships between dimensions. At a first glance, you may tend to underscore the importance of this feature: after all, Analysis Services 2000 and many other OLAP engines do not offer many-to-many relationships. Yet, its lack did not limit their adoption and, apparently, only a few businesses really require it. However, as this paper shows, the UDM (Unified Dimensional Model) can leverage many-to-many relationships helping you to present data from different perspectives that are not feasible with a traditional star schema. This opens a brand new world of opportunities that transcends the limits of traditional OLAP.

We will explore many different uses of many-to-many relationships that give us more choices to model effectively business needs, including:

  • Classical many-to-many
  • Cascading many-to-many
  • Survey
  • Distinct Count
  • Multiple Groups
  • Cross-Time
  • Transition Matrix
  • Multiple Hierarchies

Although you do not have to do so, I recommend you to read the models in the order presented above, because often each one builds upon the previous models.

Each model has a brief introduction, followed by a business scenario that may benefit of its use and an explanation of its implementation. Each model uses only the minimal set of dimensions that are necessary to explain the concept behind it and a small dataset that demonstrates the underlying behavior.

Only the Distinct Count scenario contains a section discussing the impact on performance. Since the considerations presented there may be applied to other many-to-many relationship uses, I recommend you read this scenario if you are interested in performance evaluations.

An important warning has to be made if you are going to use VisualTotals MDX function (directly or through an OLAP browser): visual totals apply only to one level at a time with many-to-many dimensions. In the Links section, you will find a link to a document written by Richard Tkachuk that explains this limitation.

You can download the last version of the whole paper on the many-to-many modeling page.


Written By: marco.russo
Date Posted: 9/25/2006
Number of Views: 6463


Comments
1/1/2007 2:56:36 PM

Try to use the Save As function and then open it with your Adobe Reader.
If this doesn't work, write again and I'll try to send you another version of PDF (produced with another tool).

1/1/2007 2:26:17 PM

Cannot download the PDF. Using abode 7.0.8. Advice?

11/23/2006 11:39:43 PM

Cannot Download PDF article; Gets error:
"The File is Damaged and could not be repaired"

Am using Adobe 7.0.8

10/28/2006 9:35:25 AM

Fantastic paper. Your thorough exploration combined with the mechanics being realized in SSAS 2005 really changes my traditional view of applying dimensional models. SSAS 2005 is on to something here. I look forward to more of your work.

9/26/2006 10:51:40 AM

Nice document and templates. The concept of factless fact is not new but the functional implementation of SSAS is. :)

You must be logged in to submit a comment.

Return