Sunday, May 16, 2010

How to avoid Long running MDX Requests

I wanted to write a small post about ‘Timeout’, which really helped me practically to manage long running MDX requests.

Example of connection string with Timeout

Provider=MSOLAP.3; Data Source= MySSASServerName; Initial Catalog= MySSASDBName; User ID= windowsusername; Password= windowsuserpwd;Timeout=120;

In the above example, requested MDX would be allowed to run in 2 minutes. After 2 minutes request will be cancelled.

This is very important feature and every developer should consider using. Usually OLAP clients provide the flexibility to design the reports by authorized users and/or select the multiple dimension members on rows or columns or pages. So based on selection made by end user, sometimes prepared MDX could be big or complex and requires lot of resources & time to execute the same. So when it is a multi user environment (especially concurrency is high) and end user has got flexibility to design the reports & run the same, then there will be ‘Competency for the resources’ and one request could bring down the server, which will drop everyone’s requests, which nobody wants to happen.

Practically I encountered Production server (power full) going down and cancelling all the request because of Single MDX request. It was horrible situation to know that Server went down.

In order to not to bring down the Production server, I used ‘Timeout’ property in connection string and given flexibility to change this number by Department and by U. Since I’ve given flexibility (Managing Timeout time in a separate table) to specify in the connection string, Reporting Administrator can manage control the Timeout time depending the importance of User or Department usage.

Example: Finance department is working on ‘Month end closure’ or they got to present the Financial statements to their BOD, so obviously their work gets the highest priority. Similarly CEO is performing What-If Analysis and that is important step for defining ‘Strategy’ for entire company. In these type of situations, you do not want to drop their MDX request unless it is too long request to execute

The above mentioned situation is not unique. I would think it is very common requirement and you never want single MDX request bringing the server down. So it is always safer to use Timeout property and manage the Server uptime well.

Clearly there is no hard number of Timeout time that I can recommend because depending the user base, concurrency, complexity of the reports, flexibility that is given to the end user, one should determine how much this number (Time) should be.

Finally, do not miss to handle the error in your OLAP client when Timeout drops the request. Always it is good practice to display the message to end user about why the requesst is dropped. It is also very important to integrate some mechanism to communicate Reporting Administrator about how many requests were dropped. In my case, I generate an email to Reporting Administrator with user & report details when a request is cancelled.

Hope this helps!!

Sunday, April 25, 2010

How to measure ROI on BI applications

I’m excited to see Boris Evelson’s excellent Blog post on measuring ROI on Business Intelligence application. He has listed out the key data points (Usage Tracking, Efficiency & Effectiveness) to collect/track in an organization and also mentioned about how these data points will be helpful for defining action items and planning future BI applications. I’ve seen some BI implementations with little or no insight on ROI and continuing the BI implementation endlessly. Though it is difficult to collect (automatically & painless) the data points that he mentioned are really informative.
In SaaS environment , Self service BI & Response time are really key items and measuring the same would really helpful in assessing the SaaS based BI applications.
Here is the URL of the post http://blogs.forrester.com/boris_evelson/10-04-05-bi_bi

Thursday, March 4, 2010

Debugging MDX with MDX Studio

MDX Studio by Mosha Pasumansky is a gift to the SSAS developers.
MDX Studio is a tool which helps users of Microsoft Analysis Services to analyze complex MDX expressions, monitor performance characteristics of MDX queries and get insight into how MDX interacts with other UDM features such as attribute relationships. MDX Studio provides unique visualization representation of MDX expression and allows the user to interact with different stages of MDX execution.

Interesting feature is Debugging, Video is available on You tube (http://www.youtube.com/watch?v=MNUJkHYwOKI

In addition to this, many times it requires a tool to format lengthy MDX for better understanding. Fthis purpose, In addition to Desktop version of MDX studio, online MDX studio is also available with some basic functionality. This is available at http://mdx.mosha.com/default.aspx . I use this a lot when I get to analyze the MDX.

Host Analytics Occupied the Microsoft's spot in Forrester Wave report 2009

This is an interesting news on Microsoft PPS.

As we all know, Microsoft entered into Business Performance Solutions or Corporate Performance solutions or Enter prise solutions space by introducing PPS (Performance Point Server) a few years ago. In the last Forrester Wave report (2007 ) report, Microsoft was also considered as a leader in this space.

But in the latest report published, Microsoft is not listed in the report and Host Analytics (only SaaS CPM Vendor (www.hostanalytics.com) took Microsoft's spot on this report.

FYI - Forrester Wave report is produced once in 2 years and it profiles major software product vendors world wide in each solution vertical.

Wednesday, December 9, 2009

Implementing Best Practices For Large Analysis Services Databases

An Excellent demo by Scalability Experts & Microsoft on Implementing Best Practices For Large Analysis Services Databases. I really like this presentation as it suggests best practices at RDBMS level as well as at SSAS level.
http://www.microsoft.com/winme/0905/1000759/default.html

Tuesday, November 10, 2009

The OLAP Report is now The BI Verdict

OLAP Report is now named as BI Verdict. May be this is to conduct the research on entire BI not just OLAP market place ??
New URL: http://www.bi-verdict.com/

Sunday, October 18, 2009

Configuring HTTP Access to SQL Server 2008 Analysis Services on Microsoft Windows Server 2008

A good article from Mike's blog on configuring HTTP Access to SQL Server 2008 Analysis Services on Microsoft Windows Server 2008.
http://bloggingabout.net/blogs/mglaser/archive/2008/08/15/configuring-http-access-to-sql-server-2008-analysis-services-on-microsoft-windows-server-2008.aspx

This article is very detailed & self explanatory.