Archive for May, 2011

Ad-hoc reporting – a reality or a myth?

Published by Ron Keler in BI At Large on May 26th, 2011 | No Comments »

The light dims. The large screen in front of you is filled with menus filled with familiar data points, organized and neatly categorized. Here’s your geographical hierarchy. And there are your financial measurements, and over there, date perspectives from the regular calendar and your fiscal one.

The cursor moves effortlessly across the screen, and the smiling sales engineer flicks finger, truns a nob here, drag a box there, creating within seconds a report, just like the one your boss was asking you for two days ago. Here it is, constructed in front of your eyes with stunning graphs, charts and tables, drill downs, filters and all, by a single guy and within minutes. And here you are, two days after your boss requested the report, still trying to negotiate an IT resource who can work on this , maybe next month.

Behold the power of ad-hoc reporting. Information for the masses. Democratization and transparency for data. Nirvana. Or is this too good to be true?

The ad-hoc reporting hype reminds me sometimes of the paperless office hype. Computer and electronic documents will replace the need to use paper in the office. It sounds logical, and it kind of makes sense, but things really don’t work this way in the real world.

Ad-hoc reporting is certainly a powerful concept, but it can get over hyped sometimes. When people who are not data experts demand access to create their own reports, they usually overlook the complexities of the data. Many of them are not aware of these, and the few analysts, who are deep into the systems and the data, still tend to over simplify things.

In a typical department, there will be maybe 1% of the personal who will be able to actually leverage ad-hoc reporting capabilities. It takes deep knowledge and understanding of the domain and the data, something that typically only very few analysts would have, and a strong technical sense. Not only the data is hard, the tools are as well. While they demo well, and seem completely intuitive when used by a pro who have been using them for years, for a novice user, who may not be the most technically savvy, it can take many months of frustrating experiments before they can actually produce meaningful and sophisticated insights.

So, is ad-hoc reporting a reality or a myth? The tough answer is it can be both, and that depends on your organization, goals and needs. If you work in a low-tech company, where your core business operations do not require people to use sophisticated software, and you expect the masses to start creating their own reports to improve business procedures, you will most likely fail. You will be much better served with a custom build information portal, a BI embedded application or an intuitive dashboard that will appeal to your users, attract them to consume information, and spoon feed them with what they need to know. However, if you have a strong group of capable analysts who understand the systems and the data they generate, and are comfortable with operating complex software, they would probably good candidates for developing their own reports, with little or no IT intervention.

Time lapse or high speed your business processes with history preservation techniques

High speed and time lapse photography are two techniques that allow us to understand the world around us by slowing down or speeding up processes that we could otherwise not be able to observe. High speed photography allows us to record phenomena that occur within a blink of an eye, and then replay them, frame by frame, millisecond by millisecond, to understand in full what has happened.

Time lapse photography allows us to capture processes that take a very long time, and play them much faster, which again allows us to develop new ways of understanding what has happened.

Both time lapse and high speed photography are ways to observe historical changes, at various speeds, using different filters to develop new perspectives regarding the subjects photographed.

That is, in essence, one of the most important premises of the data warehouse. History preservation techniques allow the business to play back events, slow down fast moving procedures and examine individual transactions that contributed to big maneuvers, or play back events that happened in the past to analyze and gain insight into their efficiency.

History preservation in the data warehouse is accomplished through different techniques, primarily known as slowly changing dimensions and snapshots. There are tons of literature materials out there about both, and if you are not familiar with those, and are working anywhere near data, you need to very quickly become familiar with those.

As a matter of practical example, take your sales forecasting information. You must have wondered about: how good are your forecasts? How accurate are they? Can you rely on your sales team forecasts regarding next week, next month, next quarter or beyond?

The only way to answer this question is to observe the forecasts accuracy over time. The forecast changes every day, and as opportunities get closer to closure, the accuracy improves. But since the forecast updates constantly, how can you tell if the predictions made a month ago about the following month were accurate or not? Well, your data warehouse could provide you with exactly this capability and allow you to examine your forecast as it gets updated each day, comparing it to the actual bookings as they occurred. Armed with such powerful information, you can develop a strong sense of your forecasting accuracy over time and across time.

Just like time-lapse photography, it takes time to build up the necessary amount of frames, or snapshots, to allow you to slow down reality and analyze what happened, but the results can provide you with course changing insights into your processes to help you achieve your goals and improve your competitive edge.

Connect Xcelsius Dashboard to OBIEE

Published by Ron Keler in OBIEE, Xcelsius on May 15th, 2011 | 6 Comments »

Oracle and SAP are two of the three leading BI vendors in the BI marketplace today. With Oracle just released OBIEE 11.g, and SAP is not far behind with BI 4.0 Both platforms are robust, enterprise grade, top of the line BI suites, and you could really not go wrong with either one. With that said, they have their strengths and weaknesses. OBIEE admin tool provides an exceptional way to manage semantic models and meta-data about your reporting environment. SAPs Xcelsius (SAP BusinessObjects Dashboards in 4.0) is an outstanding data visualization tool. Well, what if you could combine the power of OBIEE with the flexibility of the Xcelsius presentation…? Here’s how I did just that.
Xcelsius can connect to XML feeds very easily through Excel XML Maps. So all I needed to do was to figure out a way to get an OBIEE Answers report data as an XML stream. Fortunately, OBIEE has robust web services support that can be leveraged to accomplish exactly that.
First, I installed Tomcat on my OBIEE 10.1.3 environment. This version of OBIEE ships with OC4J, and it is running on my server, but I am not that familiar with it, and with deploying applications on it, so it was just as easy for me to install Apache Tomcat (I used Tomcat 6), which runs on port 8080 by default and used that for running my code.
Next, I spent most of the time figuring out which libraries I needed to add to Tomcat in order to instantiate and use the OBIEE web services classes. After a lot of experimentation, I found all I needed is packed into a single JAR file, sawsoapstubs.jar, this is of course not documented anywhere. Once I had a Tomcat server running with the correct lib, the rest was a piece of cake.
Of course, more can be done to integrate security and generalize the query access as needed, but the fundamentals are laid here.
So, here is what I did, and what you would need to do if you wanted to reproduce this in your OBIEE environment and produce stunning Xcelsius dashboards as part of your OBIEE implementation:
1.  Find sawsoapstubs.jar in your OBIEE installation (..OracleBIwebbinsawrepaj) and copy it to Tomcat lib directory

2.  Create a new web directory in Tomcat (I called mine xcelsius)

3.  Login to OBIEE and create an Answers report that contains all the data you want for your Xcelsius dashboard. Then, go to the report Advanced tab and copy the OBIEE SQL Issued

4.  Open the obiee_xlf_data_conn.jsp file (link to all example files is at the bottom of this post, also the obiee_xlf_data_conn.jsp code is below) and edit the file to reflect your host name, OBIEE username/pwd to use, and edit the query to be the one copied in the prior step. Access the edited .jsp file via a web browser (http://localhost:8080/xcelsius/obiee_xlf_data_conn1.jsp) and make sure you are getting results
obiee_xlf_data_conn.jsp:

<%@ page import=”java.net.URL, com.siebel.analytics.web.soap.v5.*, com.siebel.analytics.web.soap.*” %>
<%

try {

 SAWSessionServiceLocator awsessionservicelocator = new SAWSessionServiceLocator();
 XmlViewServiceLocator  xmlViewServiceLocator = new XmlViewServiceLocator();
 SAWSessionServiceSoap m_Session;
 URL url = new URL(“http://localhost:9704/analytics/saw.dll?SoapImpl=nQSessionService”);
 m_Session = awsessionservicelocator.getSAWSessionServiceSoap(url);

      XmlViewServiceSoap xmlService = xmlViewServiceLocator.getXmlViewServiceSoap(
      new URL(“http://localhost:9704/analytics/saw.dll?SoapImpl=xmlViewService”));
   String m_sessionID = m_Session.logon(“Administrator”, “Administrator”);
   String query = “SELECT Products.Brand saw_0, Periods.”Year” saw_1, “Sales Measures”.Dollars saw_2, “Sales Measures”.Units saw_3 FROM Paint ORDER BY saw_0, saw_1″;
   QueryResults results = xmlService.executeSQLQuery(query, XMLQueryOutputFormat.fromString(“SAWRowsetData”), new XMLQueryExecutionOptions(), m_sessionID);
   String xmlResult = results.getRowset();
   out.println(xmlResult);
   m_Session.logoff(m_sessionID);

  } catch (Exception e) {
   out.println(e);
   e.printStackTrace();

  } 

%>

5.  Now, open Excel and add a new XML map from the jsp url (make sure you refresh the data at least once from Excel. You can delete it after the refresh, to make sure you are getting the data from the server, but I had issues with excel 2003 maps not working unless I did this initial refresh inside excel). If you are running this on the obiee server and created an Xcelsius directory as did I in Tomcat, the XML Map location will be http://localhost:8080/xcelsius/obiee_xlf_data_conn.jsp

6.  Import the Excel file into excel, model as usual and add the xml map data connection

7.  Export your html/swf from Xceslius, and reference their location using an embedded content component in OBIEE Dashboards

And… voila. OBIEE Never looked better! You can download the sample files here

Delay on next post…

Published by Ron Keler in Uncategorized on May 4th, 2011 | 4 Comments »

I have not been able to post any new blog entries for the last week and a half due to a family medical problem i am attending. I will post new content soon, stay tuned, I promise my next post will be very interesting…! Thanks -Ron

© BI HAPPY
CyberChimps