The Andrew N. Wiggins Consultancy

Contact me at webmaster@anw.biz

Experimental Site

 

This site designed by Byg Software Ltd

 

The ANW.BIZ Home Page
Hyperion References

A Quick Tour of Hyperion Essbase

Hyperion Essbase OLAP Server contains multidimensional databases that support analysis and management reporting applications that are described as online analytical processing (OLAP) applications. This QuickTour discusses multidimensional concepts and terminology:

 

Introducing OLAP

 

Introducing Dimensions and Members

 

Defining Hyperion Essbase Terminology

 

Identifying Values in a Multidimensional Database

 

Looking at Data from Different Perspectives

 

Next Steps


The information contained in this document is taken from the Hyperion Essbase Database Administrator's Guide, which is available for viewing on the Essbase.com web site.


Introducing OLAP


In 1993, E. F. Codd, who set the seminal rules describing relational databases, published twelve rules for the analytical functions and performance characteristics that are essential to enterprise-scale planning and analysis applications. He called the new technology online analytical processing (OLAP) to reflect its analytical functionality and to differentiate it from online transaction processing (OLTP).

A multidimensional database supports multiple views of data sets for users who need to analyze the relationships between data categories. For example, a marketing analyst might want answers to the following questions:

 

How did Product A sell last month? How does this figure compare to sales in the same month over the last five years? How did the product sell by branch, region, and territory?

 

Did this product sell better in particular regions? Are there regional trends?

 

Did customers return Product A last year? Were the returns due to product defects? Did the company manufacture the products in a specific plant?

 

Did commissions and pricing affect how salespeople sold the product?

 

Did particular salespeople do a better job of selling the product?


Multidimensional databases consolidate and calculate data to provide different views. Only the database outline, the structure that defines all elements of the database, limits the number of views. With a multidimensional database, users can pivot the data to see information from a different viewpoint, drill down to find more detailed information, or drill up to see an overview.

Codd's twelve rules cover most user aspects of OLAP, including defining the conceptual view of the data (multidimensional), defining user needs (consistent reporting performance), and defining the platform (client-server). Codd also covers the kind of database operations a multidimensional database should support. These operations include the following:

 

Unrestricted cross-dimensional operations

 

Intuitive data manipulation

 

Flexible reporting

 

Unlimited dimensions and consolidation levels


Because of Codd's research, the multidimensional database is a standard in today's computing environment. In fact, OLTP and OLAP databases often coexist; many companies implement an OLAP database in tandem with an OLTP database.


Introducing Dimensions and Members


If you understand dimensions and members, you are well on your way to understanding the power of a multidimensional database.

Dimensions. Hyperion Essbase has two types of dimensions: standard dimensions and attribute dimensions.

Standard dimensions represent the core components of a business plan and often relate to departmental functions. Typical standard dimensions are Time, Accounts, Product Line, Market, and Division. Dimensions are static in most databases; database dimensions rarely change over the life of the application.

Attribute dimensions are a special type of dimension and are associated with standard dimensions. Through attribute dimensions, you group and analyze members of your standard dimensions. Your analyses are based on the members' attributes (characteristics). For example, you can compare the profitability of your non-caffeinated products that are packaged in glass to the profitability of your non-caffeinated products that are packaged in cans.

Attribute dimensions must be associated with a base standard dimension. Hyperion Essbase does not store the data for attribute dimensions, Hyperion Essbase dynamically calculates the data when a user retrieves it.

Members are the individual components of a dimension. For example, Product A, Product B, and Product C might be members of the Product dimension. Each member has a unique name. A dimension can contain an unlimited number of members. Hyperion Essbase can store the data associated with a member (referred to as a stored member in this chapter) or it can dynamically calculate the data when a user retrieves it.

A dimension represents the highest consolidation level in the database outline. The database outline indents members below one another to indicate a consolidation relationship. For example, in Figure 1: Hierarchical Structure, Time is a dimension and Qtr1 is a member. You will learn in later chapters how the hierarchy of members in the outline governs how users drill and pivot data.


Arranging Dimensions into Hierarchies


All Hyperion Essbase database development begins with creating a database outline. A database outline accomplishes the following:

 

Defines the structural relationships between members in a Hyperion

 

Essbase database

 

Organizes all the data in the database

 

Defines the consolidations and mathematical relationships between items


Hyperion Essbase uses the concept of members to represent data hierarchies. Each dimension consists of one or more members. The members, in turn, may consist of other members. When you create a dimension, you tell Hyperion Essbase how to consolidate the values of its individual members. Within the tree structure of the database outline, a consolidation is a group of members in a branch of the tree.

For example, many businesses summarize their data monthly, then roll up the monthly data to obtain quarterly figures, and roll up the quarterly data to obtain annual figures. Businesses may also summarize data by zip code, then by city, state, and country. Any dimension can be used to consolidate data for reporting purposes.

In the Sample Basic database (Sample Basic is the sample database that ships with Hyperion Essbase), for example, the Year dimension consists of five members: the Qtr1, Qtr2, Qt3, and Qtr4 members, each storing data for an individual quarter, plus Year, storing summary data for the entire year. Qtr1 consists of four members: the Jan, Feb, and Mar members, each storing data for an individual month, plus Qtr1, storing summary data for the entire quarter. Likewise, Qtr2, Qtr3, and Qtr4 consist of the members that represent the individual months plus the member that stores the quarterly totals.

The database outline in Figure 1: Hierarchical Structure uses a hierarchical structure to represent the data consolidations and relationships in Qtr1.

Figure 1: Hierarchical Structure

Some dimensions consist of relatively few members, while others may have hundreds or even thousands of members. Hyperion Essbase does not limit the number of members within a dimension and allows you to add new members as needed.


Defining Hyperion Essbase Terminology


Hyperion Essbase uses the terms defined in the following sections to describe a database outline.

Member Relationships, Generations, and Levels
Hyperion Essbase uses hierarchical and family history terms to describe the roles and relationships of the members in an outline. You can describe the position of the members of the branches in Figure 2: Member Generation and Level Numbers in several ways.

Figure 2: Member Generation and Level Numbers

Parents, Children, and Siblings Figure 2: Member Generation and Level Numbers illustrates the following parent, child, and sibling relationships:

Parents: A parent is a member that has a branch below it. For example, Margin is a parent member for Sales and Cost of Goods Sold.

Children: A child is a member that has a parent above it. For example, Sales and Cost of Goods Sold are children of the parent Margin. Siblings: A sibling is a child member with the same parent and at the same branch level as another member. For example, Sales and Cost of Goods Sold are siblings (they both have the parent Margin), but Marketing (at the same branch level) is not a sibling because its parent is Total Expenses.

Descendants and Ancestors
Figure 2: Member Generation and Level Numbers illustrates the following descendant and ancestral relationships:

Descendants: Descendants are all the members in branches below a parent. For example, Profit, Inventory, and Ratios are descendants of Measures. The children of Profit, Inventory, and Ratios are also descendants of Measures.

Ancestors: Ancestors are all the members in branches above a member. For example, Margin, Profit, and Measures are ancestors of Sales.

Roots and Leaves
Figure 2: Member Generation and Level Numbers illustrates the following root and leaf member relationships: Root: The root is the top member in a branch. Measures is the root for Profit, Inventory, Ratios, and the children of Profit, Inventory, and Ratios.

Leaves: Leaf members have no children; they are also referred to as detail members, level 0 members, and leaf nodes. For example, Opening Inventory, Additions, and Ending Inventory are leaf members.

Generations and Levels
Figure 2: Member Generation and Level Numbers illustrates the following generations and branch levels:

Generations: Generation numbers refer to consolidation levels within a dimension. A root branch of the tree is generation 1. Generation numbers increase as you count from the root toward the leaf member. In Figure 2: Member Generation and Level Numbers, Measures is generation 1, Profit is generation 2, and Margin is generation 3. All siblings of each level belong to the same generation; for example, Inventory and Ratios are also generation 2.

Figure 3: Generations shows part of the Product dimension with its generations numbered:

Figure 3: Generations

Levels: Levels also refer to the branches within a dimension; however, levels reverse the numerical ordering that Hyperion Essbase uses for generations. The levels count up from the leaf member toward the root. The root level number varies depending on the depth of the branch. In the example in Figure 2: Member Generation and Level Numbers, Sales and Cost of Goods Sold are level 0. All other leaf members are also level 0. Margin is level 1 and Profit is level 2. Notice that the level number of Measures varies depending on the branch. For the Ratios branch, Measures is level 2. For the Total Expenses branch, Measures is level 3.

Figure 4: Levels shows part of the Product dimension with its levels numbered:

Figure 4: Levels

Note: You can assign a name to a generation or level and then use the name as a shorthand for all the members in that generation or level.


Identifying Values in a Multidimensional Database


This section describes how data is stored in a multidimensional database a cube of cells containing data values. Each data value is stored in a single cell in the database. You refer to a particular data value by specifying its coordinates along each standard dimension. Consider the simplified database in Figure 5: A Multidimensional Database Outline:

Figure 5: A Multidimensional Database Outline

This database has three dimensions: Accounts, Time, and Scenario.

 

The Accounts dimension has four members: Sales, COGS, Margin, Margin%.

 

The Time dimension has four quarter members. Figure 6 shows only the members in Qtr1.

 

The Scenario dimension has two child members: Budget for budget values and Actual for actual values.


An intersection of members (one member from each dimension) represents a data value. The example in Figure 6 has three dimensions; thus, in Figure 6: Three Dimensional Database the dimensions and data values in the database can be represented in a cube, as shown in Figure 6: Three Dimensional Database:

Figure 6: Three Dimensional Database

The shaded cells in Figure 7: Sales Slice of the Database illustrate that, when you refer to Sales, you are referring to a slice of the database containing eight Sales values:

Figure 7: Sales Slice of the Database

When you refer to Actual Sales, you are referring to four Sales values:

Figure 8: Actual, Sales Slice of the Database

A data value is stored in a single cell in the database. To refer to a specific data value in a multidimensional database, you specify its member on each dimension. In Figure 9: Sales, Jan, Actual Slice of the Database, the cell containing the data value for Sales, Jan, Actual is shaded:

Figure 9: Sales, Jan, Actual Slice of the Database

The data value can also be expressed using the cross-dimensional operator (->) as Sales->Actual->Jan.


Looking at Data from Different Perspectives


Slicing the database in different ways gives you different perspectives of the data. The slice in Figure 10: Data for January, for example, shows data about the month of January:

Figure 10: Data for January

The slice in Figure 11: Data for February shows data for the month of February:

Figure 11: Data for February

The slice in Figure 12: Data for Profit Margin shows data for profit margin:

Figure 12: Data for Profit Margin

Slicing a database amounts to fixing one or more dimensions at a constant value while allowing the other dimensions to vary. The slice of January in Figure 10: Data for January, for example, examines all data values for which the Year dimension is fixed at Jan.


Next Steps


Now that you've had a QuickTour of multidimensional concepts and terminology, you're ready to start touring the Hyperion Essbase demo suite!