23 September 2009

Handling Ragged/Unbalanced hierarchies in SSAS

What is it?
Balanced hierarchy: In balanced (standard) hierarchies, branches of the hierarchy all have the same level (depth), with each member's parent being at the level immediately above the member.
Example: time dimension, where the depth of each level (year, quarter, month, etc.) is consistent.




Unbalanced hierarchy: the hierarchy branches can have inconsistent depths.
Example of an unbalanced hierarchy is an organization chart. The levels within the organizational structure are unbalanced, with some branches in the hierarchy having more levels than others.
The following charts illustrate the unbalanced hierarchies:



How to handle it on SSAS?
There are 2 methods to handle ragged hierarchies on SSAS:


Using Parent/child dimension
In this method we need to create parent-child dimension. Parent-child dimension can be created on top of a parent-child table/view where each record has a reference to its parent record (e.g. ParentID column). An example of this type of tables can be found on Adventure Works sample database.


Using ragged hierarchy with "Hide Member If" property
Another approach is to design a regular dimension on top of a ragged or unbalanced table/view. Ragged hierarchy: In a ragged hierarchy, the logical parent member of at least one member is not in the level immediately above the member.
Example: geography dimension which number of levels can be different on different countries. The levels provide a meaningful context to its members, thus, while Washington DC is a child of USA, it is included at the City level with Los Angeles. Therefore there will be nulls on some levels.


Note-1: We can also repeat the parent name instead of null as a placeholder.
Note-2: In the example above, 1st and 2nd record will be required when we need to assign facts to non-leaf members. In this example we may need to assign a fact to CA which is a non-leaf member.

Once we create the normal hierarchy, we can use HideMemberIf property to hide Nulls or repeated members.
HideMemberIf Setting
Description
Never
Level members are never hidden.
OnlyChildWithNoName
A level member is hidden when it is the only child of its parent and its name is null or an empty string.
OnlyChildWithParentName
A level member is hidden when it is the only child of its parent and its name is the same as the name of its parent.
NoName
A level member is hidden when its name is empty.
ParentName
A level member is hidden when its name is identical to that of its parent.



Example of an Account hierachy:




Important notes:
  • For large parent-child dimensions, aggregations are created only for the key attribute and the top attribute, therefore queries returning cells at intermediate levels are calculated at query time and can be slow. If you have a large parent-child hierarchy (more than 250,000 members), you may want to consider using a hierarchy with a fixed number of levels.
  • Microsoft recommends using P-C whenever you need to set unary operators.
  • DataMember property only works in parent-child dimensions
  • You can’t cross-join levels on a parent-child hierarchy. It might cause some complications in report development
References and more info:

12 May 2009

BI Seminar

"BI for managers" seminar was successfully held by BI Solutions in Simorgh hotel, Tehran on 22 April 2009.

The aim of this seminar was to introduce Business Intelligence to Iranian managers and show how BI (and Microsoft BI in particular) can deliver critical information to support timely and informed decisions.

More than 60 people from over 20 different companies attended, including representatives from National Oil Company, National Gas Company, National Statistics Org, Iran Khodro and SAIPA which are the largest automotive companies in Iran, and other large organisatons.

The program started with an introductory presentation from me, then Dr Abdollah Zadeh from Amir Kabir University (I can call him "the father of BI in Iran") expanded the subject with his presentation about "BI, Why, How?", then Danial Moazen discussed about problems and challenges that may arise in BI projects.

The event continued with a presentation by Neo Farvashan (MVP) about MOSS and BI, after that I introduced Microsoft BI followed by a demo on MS BI capabilities (PPS Scorecards and dashboards) to provide performance management. At the end I spoke about "implementation of BI solutions" and finished it with Q&A.

I believe it was a very successful event and I would like to thank my friends at BI Solutions and Fanafzar, especially Amir Fassihi who supported me on organising this event.

11 March 2009

New MS BI Burger - Delivering BI to everyone in the organization

After Microsoft announced that Office PPS 2007 would be folded into Microsoft Office SharePoint Server Enterprise 14 - which was officially death of PerfomancePoint Server - there's been slight changes on the famous "Microsoft BI Burger".
The new burger was designed to deliver Business Intelligence to the masses via SharePoint based under idea of "Delivering BI to everyone in the organization".

27 January 2009

Farewell PPS!

"There will be no future version of PerformancePoint Server."

Microsoft will consolidate PerformancePoint Server (PPS) with its scorecards, dashboards, and analytic capabilities into SharePoint as "PerformancePoint Services" with the release of SharePoint 14 in late 2009.

http://blogs.msdn.com/bi/archive/2009/01/23/microsoft-bi-strategy-update.aspx

Not a good news at all for MS BI world! I'm not surprised about "Planning" module as I believe it was NOT successful, but embedding "Monitoring & Analytics" into SharePoint, mmmmmmm?!

Other links:

http://performancepointinsider.com/blogs/bsm/archive/2009/01/22/just-call-me-performancepoint-services.aspx

http://nickbarclay.blogspot.com/2009/01/rip-performancepoint-server.html

23 January 2009

Magic Quadrant for Business Intelligence Platforms, 2009

Gartner is an information technology research and advisory firm which provides research analysis and advice for IT professionals, technology companies and the investment community.

The "Magic Quadrant for BI" by Gartner, presents a global view of Gartner's opinion of the main software vendors that should be considered by organizations seeking to develop business intelligence (BI) applications.

See the full article here: http://mediaproducts.gartner.com/reprints/sas/vol5/article8/article8.html

03 January 2009

Tips for gathering "Business Requirements" in a BI project.

In my opinion the most important and challenging aspect of a BI project is to understand the business requirements. Majority of BI projects failures are due to lack of understanding the business. This lack is primarily due to BI being thought as an IT project, instead of being a business project with IT as one of the enablers.

It's very important to find out "what they need" and not just focus on "what they want". The most effective way of doing that is by "face to face" meetings with managers, business users and IT people. The goal of a requirements interview is to ask questions in order to discover unknown frontiers. Think of it as a one-hour immersion to better understand what business people do and why. How do they make decisions today, and how do they want to be making decisions in the future? First ask interviewees about their roles and responsibilities to get them engaged and from there, cover the following areas:

  • What are the key business objectives?
  • For each objective, ask about measures for success to learn more about key metrics and business dimensions.
  • What roles do data and analysis play in achieving goals? Alternatively, how would better access and analysis benefit them?
  • What are the current analysis challenges?

A good question to get the interview started is "How can people tell when you're doing a great job?"

Be conversational: For the DW/BI practitioner, being conversational means putting yourself into a business frame of mind. Learn the language of the business. Don't intimidate end users by asking "What do you want in a data warehouse?" End users aren't systems designers. Acronyms and IT vernacular don't belong in a business requirements interview.

Several techniques can help you establish a more conversational tone:

  • Learn a bit about the business beforehand by reviewing the Web site or annual report to understand company-specific vocabulary and hot-button issues.
  • Meet with interviewees on their own turf. Go to their offices or conference rooms, rather than IT meeting spaces.
  • Prior to the interview, send out an announcement describing the high-level discussion topics and confirming the interview time and place. Don't attach a detailed questionnaire to this meeting notice. You can't achieve a conversational flow if you're reviewing questionnaire results-presuming anyone bothers to complete the survey.
  • Interview questions prepared in advance are fallback devices, used only if uncomfortable lulls occur in conversations or to ensure key points are covered before ending sessions.
  • Most good conversations tend to wander, so remember your session goals and steer conversations back on track if you stray too far from core issues.
  • Stay at a relatively high level in the interview's early stages. Don't follow an early comment to a very low level of detail, only to run out of time and discover that you haven't discussed three other major areas of responsibility with important requirements for the DW/BI effort.

Listen, and expect to be changed: Good interviewers should be seen but not heard — well, at least not heard too much. Strong active listening skills are required.

As you're gathering requirements from the business users, intersperse some data reality into the process by interviewing key IT personnel, especially the master database administrators responsible for operational systems. Consider what the business needs are in tandem with the availability of data to support these requirements. IT meetings tend to be informal discussions, beginning with knowledgeable project team members. Once you start to hear consistent themes from users, it's time to sit down with the data gurus and get into the extreme detail of their source systems. During these data audit interviews, try to understand whether complete, reliable data is there to support what users are asking for.

There are several methods and resources for BIR, one of the best is "The Data Warehouse Lifecycle Toolkit by R. Kimball, ...".

26 October 2008

MCTS & MCITP Certifications for SQL Server 2008 BI

Last week I got the results of those beta exams (71-448, 71-452) and surprisingly, I passed both!

The surprise was because I passed them though I hadn't had a chance to work with SQL Server 2008 in a real project before, and that means there is something wrong with the exams that you can pass them based on your SQL Server 2005 experience and just reading about new features of the 2008 version.

But the good thing is that I've passed them and there is nothing to worry about till the next version! The next version of SQL Server code-named "Killimanjaro", will be released in the first half of 2010, according to Microsoft officials. The first tech preview test builds of Kilimanjaro are due in the first half of 2009. It will provide the foundation for Microsoft's first data warehouse appliance, code-named Madison, and a BI tool called Gemini that's being designed to bring a broader range of employees into the BI fold.

11 September 2008

A feedback on 71-452 (70-452) exam: Designing a Business Intelligence Infrastructure Using Microsoft SQL Server 2008

I sat on that beta exam yesterday and here are some points:
  • There are 75 questions and the time is 3 hours which is a bit tight
  • Unlike 70-446, there is no case scenario and all questions are standalone (not related to each other)
  • Many data mining questions. Mostly about choosing the best algorithm.
  • A few around upgrading and migration strategy
  • Many questions about new features in SQL 2008, like CDC, MERGE, …
  • From the name of exam, I expected to see more “Design” related questions, but there were many development questions which I think they could be moved to the TS exam (70-448)

As usual I recommend you to have a look at the topics here and work on those that you are not familiar with.

I must wait for few weeks to get the result. Fingers crossed!

29 August 2008

An excellent quote

"The world is governed more by appearances than realities, so that it is fully as necessary to seem to know something as to know it. "
- Daniel Webster"

27 August 2008

2008 CIO Technology Priorities

According to a survey by Gartner "Business Intelligence Applications" is the highest priority for CIOs. Here is the top 10 result: