
|
|
The information systems industry has been hearing about the next generation of client/server being delivered in a Web browser. We have seen some Java applets and ActiveX controls that bring corporate data into a browser, but we have been looking for total solutions built around this architecture. SpaceOLAP from Infospace Inc. delivers OLAP client/server look, feel, and functionality on the Web. This end-to-end total Java solution exemplifies the types of systems we will be seeing delivered in a browser in the coming years.
SpaceOLAP consists of three client modules and one server module. Each client module is a different application that is accessed through a browser. All modules are written in Java. The server module, called the Infospace Java Server, resides on the Web server. This module pulls data from data sources as requested by modules running on the client. SpaceOLAP Administrator is where administrators set up the users, user groups, and data sources of the system. SpaceOLAP Designer lets users and administrators create reports and graphs for the system. SpaceOLAP Runtime lets users view the reports and graphs that have been created for them in their browsers.
In testing the system, I built a small application complete with a new group of users, and new reports and graphs pulling data from multiple data sources (more on this later). The version of SpaceOLAP that I used was a beta version. I used a Pentium 75MHz with 24MB of RAM running Windows 95 as a client machine. I used both Microsoft Corp. Internet Explorer 3.0 and Netscape Communication Corp.'s Navigator 3.0. My server was a 100MHz Pentium with 64MB of RAM. I used Microsoft Internet Information Server 2.0 running on Windows NT Server 4.0. OLAP data engines included Oracle Corp.'s Express 6.0 and Arbor Software Corp.'s Essbase 4.0.2. Installation of SpaceOLAP is only necessary on the server. The server installation went smoothly.
Before I begin to go over each of the modules, I would like to go over some SpaceOLAP terminology. A presentation is a group of reports and graphs. Synonyms for "presentations" in OLAP-speak are "briefings" or "briefing books" -- just a collection of related information. Portfolios are set up and given rights to view presentations once the presentations are created. A portfolio is a user or group of users. So, for example, I may create a presentation called "Year-End Budget vs. Actual" and give the Accounting portfolio rights to view this presentation. Any user in the Accounting group will be able to view this presentation. I'll refer to an "application" as a collection of presentations. Each client module in SpaceOLAP has its own unique URL and is accessed via the browser.
The next step is to define the users of the system and put them into logical groupings. In the User/Groups dialog, users and groups are defined and given certain permissions. One of the permissions is the ability to access a data source. It would have been nice if the system recognized any users and groups already set up in my data sources. Similarly, there would also be value in recognizing existing reports and groups of reports. This would be easier to do with Essbase than Express because metadata for users and reports is built into the Essbase engine but is application specific in Express. Lastly, the Portfolios dialog gives summaries of all of the portfolios (users and groups of users) in the system.
Once in the Designer, you will notice the environment is much like traditional client/server development environments as seen in Figure 1 (page 27). After selecting "New Presentation" from the menu, you can add pages to the presentation. From here, objects can be put onto pages. An object can be a graphic, a report, or a graph. In beta, graphs and reports are separate objects on a page; however, these objects will become one object with a toggle capability by production.
The components of any presentation, including the presentation, pages, and objects, contain properties that can be manipulated using a properties dialog. Standard properties, such as height and width, exist for each of the components of a presentation. Each, however, has its own unique properties. For example, a presentation can be specified as a Java or HTML presentation. When accessed by a user, a Java presentation will run outside the browser in a separate window (see Figure 2), and an HTML presentation will run inside the browser (see Figure 3, page 30). Also, for an HTML presentation, the way the presentation shows up in the browser can be manipulated by changing an HTML Applet Style property. Here, an entire presentation can be displayed as an applet in the browser, or only individual pages can be displayed as applets, or only each object within a page can be displayed as an applet.
The HTML Template URL property is unique to pages. Templates are a popular way to standardize a look for a group of pages in an application where what is different about each page is inserted into a template as the page is requested from the server. Each page in a SpaceOLAP presentation can use a unique HTML template, although templates are supplied as defaults. I used a properties dialog in order to manipulate certain properties such as height and width. By its production release, SpaceOLAP Designer will include an absolute layout editor. This drag-and-drop editor will make sizing and positioning objects on a page much easier.
By double-clicking on a report or graph object, the first screen of a wizard appears. This wizard is used to define the parameters for the report. The wizard first asks if you would like to use a new or existing query for the report. If "new" is selected, you are prompted for a data source. The list of available data sources depends on how they were set up in SpaceOLAP Administrator. After logging into the data source, you select measures and values of the measures' dimensions. Selection capabilities include a hierarchical list of values and a string match search. After selecting "finish" on the wizard's dialog, a form appears containing a graph or report with the requested data. From here, the dimensionality of data in the report can be modified by switching dimension tiles.
Presentations can be run right from the Designer. This makes it easy to preview them before publishing. SpaceOLAP will open an HTML presentation in the browser and run Java presentations in their own windows outside of the browser. After you are comfortable with a presentation, it can be published. A publish dialog lets you select the portfolios that will have access to this presentation. You can publish to any portfolio of which you are a member, and, by default, you will publish to your own portfolio.
I used a SpaceEngine data source while I familiarized myself with the product. Later, I set up two pages in a presentation. One page pulled data from an Essbase database and another from an Oracle Express Server database. The database for each data source was about 10MB. Each report contained one measure with four or five dimensions. The largest dimension contained 77 values, and the resulting cube of data was around 1.5MB. The client modules loaded fairly quickly from a browser on my Pentium 75MHZ. The average load time was around 35 seconds on my Intranet.
In interacting with a report (drilling, paging, rotating dimension layout, and selecting new values), performance was slower than traditional client/server applications that I have run from the same server. Still, I would not label the performance as sluggish. Although I had only a nominal amount of data in the cube with which I was interacting and was the only one using the server, the performance was good.
I ran the presentation first as a Java presentation and next as an HTML presentation. The only difference between the two is the way the reports and graphs are presented to the user. Similarly, both the Essbase report (see Figure 2, page 28) and the Express graph (see Figure 3) offered the same look, feel, and functionality to the user.
The real added value of analytical applications is the ability to do advanced selections on data. For example, exception reporting and top/bottom analysis are usually standard features in OLAP systems. Also, functionality such as the ability to create custom measures and aggregates is becoming an important selling point for vendors with OLAP solutions. SpaceOLAP does not support this level of functionality quite yet.
Infospace's position and direction with SpaceOLAP in the marketplace is reporting anywhere (Java) against any multidimensional database engine (MDAPI standards). Although this is a strong marketing position, it does make it more difficult to scale the application's functionality. In the near future, Infospace will most likely struggle with the trade-offs between offering ubiquitous analytics and using technologies native to certain platforms and/or database engines in order to support the functionality that users demand and competition supports.
IIOP protocols are currently being evaluated by the vendor to improve communications between client and server. SpaceOLAP will also open up an API to developers who want to add functionality to their applications. Look for more on these in the fall. Infospace will look to a newer version of Java, version 1.1, to improve on certain features. For example, printing reports and graphs is currently limited to printing a picture file (.gif) to a temporary directory on the server. The picture file can then be printed from there. Documentation was unavailable at the time of this writing but will be available by the production release.
Figure 1.

--The SpaceOLAP Designer environment is much like traditional client/server environments.
Figure 2.

--A SpaceOLAP presentation shown as a Java presentation, which runs outside the browser in a separate window.
Figure 3.

--A SpaceOLAP presentation shown as an HTML presentation, which runs inside the browser.
Rich Carickhoff is the practice manager for Web-based OLAP systems at Application Consulting Group (ACG), a consulting firm that specializes in using OLAP technologies to deliver business solutions. Over the past year and a half, he has worked with clients on building systems for the Web and migrating existing OLAP applications to the browser. You can reach him via email at richc@acgi.com.
What did you think of this article? Send a letter to the editor.
August 1997 Table of Contents | Other Contents | Article Index | Search | Site Index | Home
DBMS and Internet Systems (http://www.dbmsmag.com)
Copyright © 1997 Miller Freeman, Inc. ALL RIGHTS RESERVED
Redistribution without permission is prohibited.
Please send questions or comments to dbms@mfi.com
Updated Thursday, July 10, 1997