|
It is important to distinguish the capabilities of a Data Warehouse from those of an OLAP (On-Line Analytical Processing) system. In contrast to a Data Warehouse, which is usually based on relational technology, OLAP uses a multidimensional view of aggregate data to provide quick access to strategic information for further analysis. OLAP enables analysts, managers, and executives to gain insight into data through fast, consistent, interactive access to a wide variety of possible views of information. OLAP transforms raw data so that it reflects the real dimensionality of the enterprise as understood by the user. While OLAP systems have the ability to answer "who?" and "what?" questions, it is their ability to answer "what if?" and "why?" that sets them apart from Data Warehouses. OLAP enables decision-making about future actions. A typical OLAP calculation is more complex than simply summing data, for example: "What would be the effect on soft drink costs to distributors if syrup prices went up by $.10/gallon and transportation costs went down by $.05/mile?"
OLAP and Data Warehouses are complementary. A Data Warehouse stores and manages data.
OLAP transforms Data Warehouse data into strategic information. OLAP ranges from basic
navigation and browsing (often known as "slice and dice"), to calculations, to more serious
analyses such as time series and complex modeling. As decision-makers exercise more advanced
OLAP capabilities, they move from data access to information to knowledge.
Who Uses OLAP and Why?
Important to all of the above applications is the ability to provide managers with the information they need to make effective decisions about an organization's strategic directions. The key indicator of a successful OLAP application is its ability to provide information as needed, i.e., its ability to provide "just-in-time" information for effective decision-making. This requires more than a base level of detailed data. Just-in-time information is computed data that usually reflects complex relationships and is often calculated on the fly. Analyzing and modeling complex relationships are practical only if response times are consistently short. In addition, because the nature of data relationships may not be known in advance, the data model must be flexible. A truly flexible data model ensures that OLAP systems can respond to changing business requirements as needed for effective decision making.
Although OLAP applications are found in widely divergent functional areas, they all require
the following key features:
up
Multidimensional Views
A multidimensional view of data provides more than the ability to "slice and dice"; it provides the foundation for analytical processing through flexible access to information. Database design should not prejudice which operations can be performed on a dimension or how rapidly those operations are performed. Managers must be able to analyze data across any dimension, at any level of aggregation, with equal functionality and ease. OLAP software should support these views of data in a natural and responsive fashion, insulating users of the information from complex query syntax. After all, managers should not have to understand complex table layouts, elaborate table joins, and summary tables. Whether a request is for the weekly sales of a product across all geographical areas or the year-to-date sales in a city across all products, an OLAP system must have consistent response times. Managers should not be penalized for the complexity of their queries in either the effort required to form a query or the amount of time required to receive an answer.
Basic aggregation is performed on some of the dimensions (product, customer, and channel).
More complex calculations are performed on other dimensions. The measure dimension computes
ratios and averages. Variances are computed along the scenario dimension. A complex model
based on historical performance is used to compute the forecast scenario. Consistently
quick response times to these kinds of queries are key to establishing a server's ability
to provide multidimensional views of information.
Complex Calculations
Key performance indicators often require involved algebraic equations. Sales forecasting uses trend algorithms such as moving averages and percentage growth. Analyzing the sales and promotions of a given company and its competitors requires modeling complex relationships among the players. The real world is complicated -- the ability to model complex relationships is key in analytical processing applications. OLAP software must provide a rich tool kit of powerful yet succinct computational methods. To make developers more efficient and business users more self-sufficient, the vehicle for implementing computational methods should be clear and non-procedural. If the method for creating the desired calculations is not clear, development time and/or usage will suffer. If the calculation method is procedural, changes to the system cannot be done in a timely manner, effectively eliminating access to just-in-time information.
Whereas transaction processing systems are judged on their ability to collect and manage data,
analytical processing systems are judged on their ability to create information from data. An
example of a simple calculation contained in the performance benchmark
is the calculation of margin (sales minus costs). The computation of the forecast is the most
complex calculation contained in the current version of the performance benchmark. Historical
data is used to project the future and aggregate data is used to estimate input data. Other more
complex calculations, such as allocations and trend analysis, are also often found in OLAP systems.
Time Intelligence
The time hierarchy is not always used in the same manner as other hierarchies. For example, a manager might ask to see the sales for May or the sales for the first five months of 2003. The same manager might also ask to see the sales for blue shirts but would never ask to see the sales for the first five shirts. Concepts such as year-to-date and period over period comparisons must be easily defined in an OLAP system.
In addition, OLAP systems must understand the concept of balances over time. For example, if a
company sold 10 shirts in January, five shirts in February, and 10 shirts in March, then the total
balance sold for the quarter would be 25 shirts. If, on the other hand, a company had a head count
of 10 employees in January, only five employees in February, and 10 employees again in March, what
was the company's employee head count for the quarter? Most companies would use an average balance.
In the case of cash, most companies use an ending balance.
OLAP Benefits
IT developers also benefit from using the right OLAP software. Although it is possible to build an OLAP system using software designed for transaction processing or data collection, it is certainly not a very efficient use of developer time. By using software specifically designed for OLAP, developers can deliver applications to business users faster, providing better service. Faster delivery of applications also reduces the applications backlog. OLAP reduces the applications backlog still further by making business users self-sufficient enough to build their own models. However, unlike standalone departmental applications running on PC networks, OLAP applications are dependent on Data Warehouses and transaction processing systems to refresh their source level data. As a result, IT gains more self-sufficient users without relinquishing control over the integrity of the data. IT also realizes more efficient operations through OLAP. By using software designed for OLAP, IT reduces the query drag and network traffic on transaction systems or the Data Warehouse.
Lastly, by providing the ability to model real business problems and a more efficient use of
people resources, OLAP enables the organization as a whole to respond more quickly to market demands.
Market responsiveness, in turn, often yields improved revenue and profitability.
|