When Web and warehouse unite
- By Julie Hahnke
What was true in the "old" Olap days is true now... but some new Web
vendors are lighting up the warehouse world.
Two technology juggernauts, Webs and warehouses, are coming together as businesses increasingly look to leverage
the wealth of information in their corporate warehouses through Web-based user access. In its latest market intelligence
findings, Software Productivity Group's Analyst Services division, Natick, Mass., reports the two leading technology
initiatives among Fortune 1000 businesses are Internet/Intranet development and data warehousing. It is no surprise
then that Web-based warehouse access, primarily Web-based decision support, is in such demand. According to SPG's
report, 38% of warehouse developers use Web-enabling functionality as a primary selection criterion when purchasing
decision support (DSS) tools for the warehouse.
Why is the Web such an attractive form of information access? Most warehouses are intended to serve enterprise
information needs across an entire organization. If only a small group of users can access the data in the warehouse,
returns on investment are much smaller and payback cycles are much longer. If access can be spread to a much broader
user group, the business benefit will be significantly greater with a much higher return on the warehouse initiative.
This is the single greatest advantage of Web-based warehouse access. With the only client-side requirement being
a browser and a network interface, mass deployment of DSS applications is far simpler than in a client/server architecture.
Through Web-based access, it is now possible to provide decision support functionality to thousands across the
enterprise and truly harness the power of the information stored in the corporate warehouse.
Wag the dog
Despite the attractiveness and potential benefits of Web-based warehouse access however, selecting a tool based
solely on its Web support is akin to the tail wagging the dog. While Web capabilities may be an important selection
criterion for DSS products, it should not be the only one. Users can easily get caught up in vendor debates over
topics such as fat client plug-ins, HTTP impersistence and ISAPI/NSAPI interoperability issues and lose sight of
the bigger picture. In fact, vendors are notorious for touting the importance of Web functionality their products
just happen to provide and for minimizing the need for functionality their products lack. The effect leaves customers
adrift in a sea of cyber hype, worrying about the details of interoperability, persistence, interactivity and security,
and not sure how to prioritize these issues with warehouse architecture and functional business requirements.
There are two steps that must be undertaken when purchasing Web based decision support products. The first is
to demystify the cyber jargon that will be ever present during the buying process. What are the relevant issues
to consider when evaluating Web features and functionality? By understanding these, one can filter out hype and
better interpret and compare vendor claims. The second step is to balance Web requirements with the overall project
requirements when making a final product selection. How one weighs Web functionality depends on a number of project
factors including architecture and user requirements.
The following six questions should be answered when considering and comparing Web-based DSS offerings.
1. WHAT TYPE OF PRODUCT IS IT?
The core competency of the DSS vendor usually indicates what type of functionality to expect from their Web
products. For instance, any Web-based products offered by vendors like Actuate or Crystal are probably limited
to SQL querying and reporting, since this is what these vendors specialize in. Likewise, expect Web-based Olap
capabilities from Olap vendors such as Information Advantage Inc., Minnetonka, Minn., or Arbor Software Inc., Santa
Clara, Calif. While this seems obvious, it quickly reduces the number of products to consider based on user access
requirements. Most of the vendors offering Web-based decision support are established companies with solid client/server
offerings like functionality.
There is a smaller subset of Web-only startups, however, that should not be overlooked. Some of these companies
have become acquisition targets, enabling the rapid if not seamless addition of Web-based capabilities to existing
client/server products. That was the fate of Interweave, which was purchased by Cognos Inc., Burlington, Mass.,
in September 1997 and Netscheme -- acquired by Actuate, September 1997. But others offer viable Web-only DSS alternatives
when client/server support is not required. Most of the Web-only companies are limited to query and reporting (such
as Zanza and Influence). Infospace, however, has developed respectable Olap capabilities in a Web-only offering
and has captured considerable mindshare for this subset of Web-only products.
2. HOW INTERACTIVE IS THE WEB INTERFACE?
Products can vary widely on this single question, yet it is all important when addressing specific user requirements.
The simplest Web capabilities support the viewing of static reports. In some cases, the browser is limited to pre-generated
reports stored on the application server, while in other cases the report query can be issued from the client.
Business Objects Inc., Cupertino, Calif., offers static HTML report viewing while Kingston, Ontario, Canada-based
Andyne Computing Ltd.'s GQL bypasses the limitations of HTML and HTTP. Andyne provides report access via Java applets
on the client communicating via Corba directly to the application server.
The next level of interactivity allows dynamic analysis of the query results from the client. This is a minimum
requirement for Web-based Olap. This dynamic analysis can include drill downs, pivots, charting, etc., with the
specific functionality varying between products. Brio Technology Inc., Mountain View, Calif., Cognos and Infospace
are good representatives of vendors offering this degree of dynamic analysis. Complex dynamic analysis takes this
functionality one step further and allows the customization of dynamic functions. This enables the development
of Web-based applications specific to given business functions. Oracle's Express and Arbor's Essbase are examples
of products providing this degree of interactivity.
3. HOW IS PERSISTENCE HANDLED? (AND CONVERSELY, HOW MUCH PERSISTENCE IS NEEDED?)
Persistence and state have been major weaknesses of the Web. They give an application a "memory" of
where it has been and what has been done. Stateless applications (which are the most typical implementation of
HTML pages) lack this knowledge or memory. Each client request has no knowledge of what has come before and must
therefore provide all required information and parameters anew. Clever scripting tricks and the use of magic cookies
stored on the client are all attempts to overcome the HTTP protocol's inherent impersistence and lack of state.
This is not much of an issue when viewing static reports, but is a critical factor when trying to perform Olap
analysis where the forward direction of analysis is directly dependent on what has gone on before.
The first issue to address when considering a product's ability to handle persistence is whether it is required.
Can the user's data access requirements be handled by the static viewing of stateless reports or are the analytic
needs more complex, requiring persistence and state? If the latter is true, then how is state managed? If the client
connects to the Web server via HTTP, try and identify what tricks the product is using to retain state. Arbor's
Essbase Web Gateway passes a cookie to the client where state is stored. Cookies or magic cookies are small files
saved on the client that store information previously provided by the user). Brio takes a different approach and
downloads a client plug-in that works in conjunction with the browser. The plug-in is retained in memory for the
length of the session and provides state and persistence during this period.
Corba-based object messaging and remote procedure calls (RPCs) are persistent alternatives to HTTP. Typically
Java applets on the client that communicate directly with application servers use these "stateful" middleware
alternatives. This represents the high end of persistent messaging between Web-based clients and application servers
and eliminates the problems of HTTP's impersistence. Examples of products that communicate in this way include
Arbor's recently acquired Wired For Olap, Andyne's GQL and Infospace's SpaceSQL and SpaceOlap.
4. HOW INTUITIVE IS THE USER INTERFACE? (THIS IS ALSO REFERRED TO AS THE "MOM"
Is the user interface so intuitive and easy to figure out that your mother would be able to use it without special
training? (Note this test assumes a non-rocket scientist mother). Ease of use is a very important consideration
for Web-based applications because they are often distributed to large numbers of users over potentially vast environments.
It is not always practical or even possible to provide training for everyone. Therefore the interface must be clear,
intuitive and non-threatening.
This can be more easily achieved by less sophisticated products with fewer moving parts (for instance Andyne's
QGL has always received high marks from users for the simplicity of its interface, but it is not as fully functioned
as most other DSS products). It can, however, be a challenge to package more sophisticated Olap functionality in
a "simple" interface. Clearly users' technical and quantitative abilities will affect to what degree
the "Mom" test applies. But in general, the greater the number of users and the broader their distribution,
the more intuitive the user interface should be.
It is important to note that in every case, Web-based DSS products contain only a subset of the functionality
offered by corresponding client/server products. Smaller numbers of power users may be better served with a more
fully functioned client/server application.
5. HOW PLATFORM INDEPENDENT IS THE CLIENT APPLICATION?
Client interoperability actually drops as vendors employ state of the art Web technologies. This is not surprising
considering the most open and interoperable systems provide "least common denominator" functionality.
In Web terms CGI scripts are the lowest tech (and poorest performing) way for browser clients to communicate
with Web servers. CGI, however, is supported by practically every browser on platforms ranging from Windows 3.1
to Unix to Macintoshes. The ISAPI and NSAPI interfaces (also based on the HTTP protocol) offered by Microsoft and
Netscape respectively, allow better performance when messaging between browser and Web server, but require either
a Microsoft or Netscape browser. This eliminates Web server access to Windows 3.1 clients and client access to
proprietary servers that do not support ISAPI and NSAPI, such as Apache and Domino Web servers. At the high end,
Java clients provide the most flexible client functionality, but they also can restrict client usage. Java applets
require a 32-bit operating system (bye-bye Win 3.1) and a Java Runtime Kernel resident in the client browser (again
requiring current Microsoft or Netscape browsers).
Plug-in-based clients must also be evaluated for client interoperability. Plug-ins require additional memory
and possibly other desktop resources in order to run. While they can provide enhanced Web functionality (as in
the case of Brio) users will need to have adequate desktop resources to run them.
The take-home lesson here is that to build clients that can run on the broadest number of user desktops, those
clients should make the least demands on operating system level, browser and desktop resources. More fully functioned
clients that require either more client resources or specific browsers are fine if one can ensure their users are
6. IS SEPARATE SOFTWARE REQUIRED?
The final question to consider is whether or not a vendor's Web functionality requires separate software or
is the functionality bundled in their client/server product? Depending on the project and the environment, this
can have an impact on software purchases, installation and software maintenance. Redwood Shores, Calif.-based Oracle
Corp.'s Express is an example of an Olap product that provides both client/server and Web functionality within
the same product. Cognos, on the other hand, offers separate products including Powerplay Web Edition for Olap
functionality and its recently acquired Interweave for query and reporting.
A related question to ask is whether a product creates a separate report file for Web access versus client/server
access. This can quickly proliferate the number of files that must be managed for a given number of reports. This
can also potentially create report versioning and synchronization problems between Web-based users and client/server
users. Andyne's GQL is an example of a product that can provide both Web and client/server access from a single
Balancing Web requirements
Understanding these Web features, how does one balance the need for Web-based access with other project requirements?
While no given rule can be applied to every project, the answers to three questions can help clarify the various
1. WHO ARE THE USERS AND WHAT DO THEY NEED?
Do not even attempt to select a Web DSS tool if you do not have a clear understanding of your users and their
requirements. Who needs data access now, who is likely to need future access, and who may possibly need future
access? What are their specific application requirements? It is very important to determine early on if the Web
is capable of handling the types of required analysis. If user requirements are more complex, the Web may not be
a viable option. Do the requirements break down into primarily query and reporting functions, Olap or a combination
2. WHAT IS THE USER'S DESKTOP ENVIRONMENT?
What operating systems and browsers do the users currently have? How much memory is typically available? How
much variety is there within the group of users defined for this project? (For instance, do some users have Windows
3.1 desktops while others use Solaris workstations?) How much control does the project have over the user's desktop
and its configuration? These questions establish potential interoperability constraints. If the user group is broad
and their desktop configurations vary, a DSS product with the fewest desktop/browser requirements may be more appropriate
than a fancy, Java-based client.
3. WHAT CURRENTLY EXISTS IN THE ENVIRONMENT?
Is the warehouse data stored in a relational database engine or a multidimensional engine? What data access
or DSS products already exist in the environment? Do users already have client/server-based access to warehouse
data? The answers to these questions will determine to what degree existing products can be leveraged and what
data storage interface requirements new products must satisfy. For example, if one is using Arbor's Essbase product
for data storage, it would be worth considering their Web product's capabilities. Or if users already access warehouse
data with Brio's client/server product, then there may be advantage to sticking with their Web product for user
These three questions will identify the most critical issues when weighing Web functionality with user requirements
and current architecture. They will also better refine the understanding of requirements enough to evaluate the
additional needs for application persistence, functional interactivity and ease of use.
Web-based capabilities should not be considered in a vacuum, but as an integrated component of an enterprise
decision support architecture. In this way the Web can be used to extend enterprise data access and provide maximum
business return on the corporate warehouse investment.