Attributes describe characteristics of data such as the size and color of products. Through attributes you can group and analyze members of dimensions based on their characteristics.
This chapter describes how to create and manage attributes in a Hyperion Essbase OLAP Server outline. It contains the following sections:
You can find other information about attributes in relevant sections of this book.
For information about... | See... |
---|---|
Defining attributes through dimension build | |
Using attributes in partitions | |
Using attributes in report writer |
You can use the Hyperion Essbase attribute feature to retrieve and analyze data not only from the perspective of dimensions, but also in terms of characteristics, or attributes, of those dimensions. For example, you can analyze product profitability based on size or packaging, and you can make more effective conclusions by incorporating into your analysis market attributes such as the population size of each market region.
Such an analysis could tell you that decaffeinated drinks sold in cans in small (less than 6,000,000-population) markets are less profitable than you anticipated. For more details, you can filter your analysis by specific attribute criteria, including minimum or maximum sales and profits of different products in similar market segments.
Here are a few ways analysis by attribute provides depth and perspective, supporting better-informed decisions.
An attribute crosstab is a report or spreadsheet showing data consolidations across attributes of the same dimension. For example, the crosstab in Figure 10-1 displays product packaging as columns and the product size in ounces as rows. At their intersections, you see the profit for each combination of package type and size. From this information, you can see which size-packaging combinations were most profitable in the Florida market.
Product Year Florida Profit Actual Bottle Can Pkg Type ========= ========= ========= 32 946 N/A 946 20 791 N/A 791 16 714 N/A 714 12 241 2,383 2,624 Ounces 2,692 2,383 5,075 |
In the Sample Basic database, products have attributes that are characteristics of the products. For example, products have an attribute that describes their packaging. In the outline, you see this as two dimensions, the Products dimension, and the Pkg Type attribute dimension that is associated with it. An attribute dimension has the word Attribute next to its name in the outline. Figure 10-2 shows part of the Sample Basic outline featuring the Product dimension and three attribute dimensions, Caffeinated, Ounces, and Pkg Type.
Figure 10-2: Outline Showing Base and Attribute Dimensions
In the outline, to the right of the Product dimension, the terms Caffeinated, Ounces, and Pkg Type, enclosed in braces, show that these attribute dimensions are associated with the Product dimension.
A standard dimension is any dimension that is not an attribute dimension. When an attribute dimension is associated with a standard dimension, the standard dimension is the base dimension for that attribute dimension. In the outline in Figure 10-2, the Product dimension is the base dimension for the Caffeinated, Ounces, and Pkg Type attribute dimensions.
Note: | Attribute dimensions and members are Dynamic Calc. This means Hyperion Essbase calculates attribute information at retrieval time. Attribute data is not stored in the database. |
Members of an attribute dimension are potential attributes of the members of the associated base dimension. After you associate a base dimension with an attribute dimension, you associate members of the base dimension with members of the associated attribute dimension. The Market dimension member Connecticut is associated with the 6000000 member of the Population attribute dimension. That makes 6000000 an attribute of Connecticut.
In the outline, the information enclosed in braces next to a base dimension member shows the attributes of that member. In Figure 10-2, next to product "100-10, {Caffeinated:True, Ounces:12, Pkg Type:Can}" shows that product 100-10 has three attributes: product 100-10 has caffeine, it is sold in 12-ounce containers, and the containers are cans.
There are several important rules regarding members of attribute dimensions and their base dimensions.
For example, in Figure 10-3, all Market dimension members that have Population attributes are at level 0. You cannot associate East, which is a level 1 member, with a Population attribute since the other members of the Market dimension that have Population attributes are level 0 members.
Figure 10-3: Association of Attributes with the Same Level Members of the Market Dimension
For example, in the Population attribute dimension, you can associate only level 0 members such as 3000000, 6000000, and 9000000, with members of the Market dimension. You cannot associate a level 1 member such as Small.
The name of the level 0 member of an attribute dimension is the attribute value. The only members of attribute dimensions that have attribute values are level 0 members.
You can use the higher-level members of attribute dimensions to select and group data. For example, you can use Small, the level 1 member of the Population attribute dimension, to retrieve sales in both the 3000000 and 6000000 population categories.
For example, product 100-10 can have size and packaging attributes, but only one size and only one type of packaging.
You can use attribute values in calculations in the following comparisons:
Attribute dimensions have a text, numeric, Boolean, or date type that enables different functions for grouping, selecting, or calculating data. Although assigned at the dimension level, the attribute type applies only to level 0 members of the attribute dimension.
The default attribute type is text. Text attributes enable the basic attribute member selection and attribute comparisons in calculations. When you perform such comparisons, Hyperion Essbase compares characters. For example, the package type Bottle is less than the package type Can because B precedes C in the alphabet. In Sample Basic, Pkg Type is an example of a text attribute dimension.
The names of level 0 members of numeric attribute dimensions are numeric values. You can include the names (values) of numeric attribute dimension members in calculations. For example, you can use the number of ounces specified in the Ounces attribute to calculate profit per ounce for each product.
You can also associate numeric attributes with ranges of base dimension values; for example, to analyze product sales by market population groupings--states with 3,000,000 population or less in one group, states with a population between 3,000,001 and 6 million in another group, and so on. See Assigning the Names of Members of Numeric Attribute Dimensions to Ranges of Values.
All Boolean attribute dimensions in a database contain only two members. The member names must match the settings for the database; for example, True and False. See Changing the Member Names for Boolean Attribute Dimensions.
You can use date attributes to specify the date format--month-day-year or day-month-year--and to sequence information accordingly. See Setting the Member Name Format of Date Attribute Dimensions. You can use date attributes in calculations. For example, you can compare dates in a calculation that selects product sales from markets established since 10-12-1999.
Hyperion Essbase supports date attributes from January 1, 1970 through January 1, 2038.
In general, attribute dimensions and their members are similar to standard dimensions and members. You can provide aliases and member comments for attributes. Attribute dimensions can include hierarchies and you can name generations and levels. You can perform the same spreadsheet operations on attribute dimensions and members as you can on standard dimensions and members; for example, to analyze data from different perspectives, you can retrieve, pivot, and drill down in the spreadsheet.
Table 10-1 describes major differences between attribute and standard dimensions and their members.
Attributes and UDAs both enable analysis based on characteristics of the data. Attributes provide much more capability than UDAs. Table 10-2 compares them. Checkmarks indicate the feature supports the corresponding capability.
When you create the first attribute dimension in the outline, Hyperion Essbase also creates the Attribute Calculations dimension comprising five members with the default names Sum, Count, Min (minimum), Max (maximum), and Avg (average). You can use the members of the Attribute Calculations dimension to retrieve calculated information; for example, the average sales of cola within different market population ranges.
The Attribute Calculations dimension is not visible in the outline. You can see it wherever you select dimension members, such as in the Member Selection dialog box and in the Hyperion Essbase Query Designer in the Hyperion Essbase Spreadsheet Add-in.
For more information about the Attribute Calculations dimension, see Attribute Calculations Dimension and Changing Member Names of the Attribute Calculations Dimension.
Hyperion Essbase provides more than one way to design attribute information into a database. Most often, defining characteristics of the data through attribute dimensions and their members is the best approach.
For the most flexibility and functionality, use attribute dimensions to define attribute data. Using attribute dimensions provides the following features:
You can view attribute data only when you want to, you can create meaningful summaries through crosstabs, and using type-based comparisons, you can selectively view just the data you want to see.
Not only can you perform calculations on the names of members of attribute dimensions to define members of standard dimensions, you can also access five different types of consolidations of attribute data: sums, counts, averages, minimums, and maximums.
Because attribute dimensions are sparse, Dynamic Calc, they are not stored as data. Compared to using shared members, outlines using attribute dimensions contain fewer members and are easier to read.
For more about attribute features, see About Attributes.
In some situations, you should consider one of the following approaches:
Table 10-3 describes situations where you might consider one of these alternative approaches for managing attribute data in a database.
Outline layout and content can affect attribute calculation and query performance. For general outline design guidelines, see Designing an Outline to Optimize Performance.
To optimize attribute query performance, consider the following design tips:
For information on optimizing calculation of outlines containing attributes, see Calculation and Retrieval Performance Considerations.
All member names in an outline must be unique. When you use the attribute feature, Hyperion Essbase establishes some default member names in some places. These default names might duplicate names that already exist in the outline. Use the Settings > Attribute Member Names command to change these system-defined names for the database. You can also use this command to establish other settings for members of attribute dimensions in the database.
Define the member name settings before you define or build the attribute dimensions. Changing the settings after the attribute dimensions and members are defined could result in invalid member names.
The following sections describe how to work with the names of members of attribute dimensions:
Note: | If you partition on outlines containing attribute dimensions, the name format settings of members described in this section must be identical in source and target outlines. |
You can use the GETATTRIBUTESPECS command in ESSCMD to view the attribute member name format specifications for the database. For example:GETATTRIBUTESPECS Sample Basic See the online Technical Reference in the DOCS directory for information about this command. See Performing Interactive and Batch Operations Using ESSCMD for information about ESSCMD.
|
The names of members of Boolean, date, and numeric attribute dimensions are values. It is possible to encounter duplicate attribute values in different attribute dimensions.
Because Hyperion Essbase does not allow duplicate member names, Application Manager helps you to define unique names by attaching a prefix or suffix to member names in Boolean, date, and numeric attribute dimensions in the outline. For example, by setting member names of attribute dimensions to include the dimension name as the suffix, attached by an underscore, the member value 12 in the Ounces attribute dimension assumes the unique, full attribute member name, 12_Ounces.
By default, Hyperion Essbase assumes that no prefix or suffix is attached to the names of members of attribute dimensions.
Note: | The convention that you select applies to the level 0 member names of all numeric, Boolean, and date attribute dimensions in the outline. |
For the examples in the following instructions, consider the attribute dimension shown in Figure 10-4.
Figure 10-4: The Population Attribute Dimension and Members
The Sample box shows the format of member names in numeric, Boolean, and date attribute dimensions.
Note: | If you select a value other than None, Hyperion Essbase assumes the other format options are Prefix and "_(underscore)." |
You can use the GETATTRINFO command in ESSCMD to view the dimension, attribute value and attribute type of a specific attribute member. For example, to view attribute name information for the Caffeinated_True attribute:GETATTRINFO "Caffeinated_True" See the online Technical Reference in the DOCS directory for information about this command. See Performing Interactive and Batch Operations Using ESSCMD for information about ESSCMD.
|
To avoid duplicating names in an outline, you may need to change the name of the Attribute Calculations dimension or its members. For more information about the Attribute Calculations dimension, see Attribute Calculations Dimension.
Regardless of the name that you use for a member, its function remains the same. For example, the second (Count) member always counts, no matter what you name it.
Figure 10-5: Attribute Calculations Page in the Attribute Member
Names Dialog Box
Text Box Label | Default Name |
---|---|
Dimension Name | Attribute Calculations |
Sum Member Name | Sum |
Count Member Name | Count |
Min Member Name | Min |
Max Member Name | Max |
Avg Member Name | Avg |
Note: |
The Sum member totals members based on their consolidation property or formula. For example, the Sum member uses the following formula to consolidate the profit percentages of 12-ounce products: |
This calculation is not the sum of all percentages for all base-dimension members with the Ounces attribute 12. For more information about each member, see Default Attribute Calculations Members.
All Boolean attribute dimensions in a single database have two, level 0 members with the same names, by default, True and False.
Hyperion Essbase enables you to change the names of members of Boolean attribute dimensions; for example, to Yes and No.
When you set an attribute dimension type as Boolean, Hyperion Essbase automatically creates two members with the names specified in the setting. If other members exist in the Boolean attribute dimension, you must remove them.
Figure 10-6: Boolean and Date Page in the Attribute Member
Names Dialog Box
Note: | If you have more than one Boolean attribute dimension, you must specify a prefix or suffix member name format to ensure unique member names; for example, Caffeinated_True and Caffeinated_False. See Defining a Prefix or Suffix Format for the Names of Members of Attribute Dimensions. |
Note: | If you change the date member name format, the names of existing members of date attribute dimensions may be invalid. For example, if the 10-18-1999 member exists and you change the format to dd-mm-yyyy, outline verification will find this member invalid. If you change the date format, you must rebuild the date attribute dimensions. |
Members of numeric attribute dimensions can represent single numeric values. For example, the member 12 in the Ounces attribute dimension represents the single numeric value 12; you associate this attribute with all 12-ounce products. The outline includes a separate member for each size; for example, 16, 20, and 32.
Members of numeric attribute dimensions can represent ranges of values. Consider, for example, the Population attribute dimension shown in Figure 10-7.
Figure 10-7: Population Attribute Dimension and Members
In this outline, the members of the Population attribute dimension represent ranges of population values in the associated Market dimension. The 3000000 member represents populations from zero through 3,000,000; the 6000000 member represents populations from 3,000,001 through 6,000,000; and so on. Each range includes values greater than the name of the preceding member up to and including the member value itself. A setting for the outline establishes that each numeric member represents the top of its range.
You can also define this outline setting so that members of numeric attribute dimensions are the bottoms of the ranges that they represent. For example, if numeric members are set to define the bottoms of the ranges, the 3000000 member represents populations from 3,000,000 through 5,999,999 and the 6000000 member represents populations from 6,000,000 through 8,999,999.
When you build the base dimension, Hyperion Essbase automatically associates members of the base dimension with the appropriate attribute range. For example, if numeric members represent the tops of ranges, Hyperion Essbase automatically associates the Connecticut market, with a population of 3,269,858, with the 6000000 member of the Population attribute dimension.
In the dimension build rules file, you specify the size of the range for each member of the numeric attribute dimension. In the above example, each attribute represents a range of 3,000,000. See Working With Numeric Ranges.
Figure 10-8: Numeric Ranges Page in the Attribute Member
Names Dialog Box
When manually working with attributes, use the Outline Editor in Hyperion Essbase Application Manager to perform the following dimension and member-related tasks:
When you associate an attribute dimension with a standard dimension, the standard dimension is known as the base dimension for that attribute dimension.
For example, you might have a Size attribute dimension with members Small, Medium, and Large. If you associate the Size attribute dimension with the Product dimension, you cannot also associate the Size attribute dimension with the Market dimension. If you also want to track size-related information for the Market dimension, you must create another attribute dimension with a different name, for example, MarketSize, and associate the MarketSize attribute dimension with the Market dimension.
Figure 10-9: Attributes Page in the Dimension Properties Dialog Box
The Attributes page displays the name of the selected base dimension and contains the following items:
Attribute associations must follow these rules:
You can associate members from different attribute dimensions with the same member of a base dimension. For example, a decaffeinated cola product (100-30) sold in 16 ounce bottles has three attributes: Caffeinated:False; Ounces:16; and Pkg Type:Bottle.
After attributes are associated with base dimension members, if you cut or copy and paste base dimension members to another location in the outline, the attribute associations are lost.
Figure 10-10: Member Attributes Page in the Member Properties Dialog Box
The Member Attributes page displays the name of the selected member of the base dimension and contains the following items:
Repeat until member names display without plus or minus symbols next to them. Attribute values are the level 0 members in an attribute dimension.
The Associated Attributes list box displays the name of the selected attribute dimension and the associated attribute value.
Note: | Hyperion Essbase does not require that each member of a base dimension be associated with a member of an attribute dimension. |
Hyperion Essbase calculates attribute data dynamically at retrieval time, using members from a system-defined dimension created specifically by Hyperion Essbase. Using this dimension, you can apply different calculation functions, such as a sum or an average, to the same attribute. You can also perform specific calculations on members of attribute dimensions; for example, to determine profitability by ounce for products sized by the ounce.
The following information assumes that you understand the concepts of attribute dimensions and Hyperion Essbase calculations, including dynamic calculations. For more information, see Calculating Data
This section includes the following:
The Attribute Calculations dimension contains five members. You can use these members in spreadsheets or in reports to dynamically calculate and report on attribute data, such as the average yearly sales of 12-ounce bottles of cola in the West. This dimension has the following properties:
There is no consolidation along attribute dimensions. You cannot tag members from attribute dimensions with consolidation symbols (for example, + or -) or with member formulas in order to calculate attribute data. As Dynamic Calc members, attribute calculations do not affect the batch calculation in terms of time or calculation order. To calculate attribute data at retrieval time, Hyperion Essbase:
Note: |
Hyperion Essbase excludes #MISSING values when calculating attribute data.
|
For example, as shown in Figure 10-11, a spreadsheet user specifies two members of attribute dimensions (Ounces_16 and Bottle) and an Attribute Calculations member (Avg) in a spreadsheet report. Upon retrieval, Hyperion Essbase dynamically calculates the average sales values of all products associated with these attributes for the current member combination (Actual->Sales->East->Qtr1):
Figure 10-11: Retrieving an Attribute Calculations Member
For more information on accessing calculated attribute data, see Accessing Attribute Calculations Members Using the Spreadsheet.
The Attribute Calculations dimension contains five members used to calculate and report attribute data. These members are:
DOCS
directory.
Note: |
Each of these calculations excludes #MISSING values.
|
You can change these default member names using Application Manager, subject to the same naming conventions as standard members. For more information on changing Attribute Calculations member names, see Changing Member Names of the Attribute Calculations Dimension.
The default calculation for attributes is Sum. If a spreadsheet user specifies a member of an attribute dimension in a spreadsheet but does not specify a member of the Attribute Calculations dimension, Hyperion Essbase retrieves the sum for the specified attribute or combination of attributes. For example, in the following spreadsheet view, the value in cell C4 represents the sum of sales values for the attributes Ounces_16 and Bottle for the current member combination (Actual->Sales->East->Qtr1), even though the Sum member is not displayed in the sheet.
Figure 10-12: Retrieving the Default Attribute Calculations Member
As an example of how Hyperion Essbase calculates attribute data, consider the following yearly sales data for the East:
A spreadsheet report showing calculated attribute data might look like this:
Figure 10-13: Sample Spreadsheet with Attribute Data
As shown in the figure above, you can retrieve multiple Attribute Calculations members for attributes. For example, you can calculate Sum, Count, Avg, Min, and Max for 32-ounce bottles and cans.
You can access members from the Attribute Calculations dimension in Hyperion Essbase Spreadsheet Add-in. From the spreadsheet, users can view Attribute Calculations dimension members by:
For more information on accessing calculated attribute data from the spreadsheet, see the Hyperion Essbase Spreadsheet Add-in User's Guide.
Keep in mind the following calculation and retrieval performance considerations:
In addition to using the Attribute Calculations dimension to calculate attribute data, you can also use calculation formulas on members of standard or base dimensions to perform specific calculations on members of attribute dimensions; for example, to determine profitability by ounce for products sized by the ounce.
Note: | You cannot associate formulas with members of attribute dimensions. |
You can use the following functions to perform specific calculations on attributes:
Note: |
For syntax information and examples for these functions, see the online Technical Reference in the DOCS directory. For an additional example using @ATTRIBUTEVAL in a formula, see Calculating an Attribute Formula.
|
Copyright © 1991-2000 Hyperion Solutions Corporation. All rights reserved.