Illustrated Step-By-Step Guide To Performance Optimization Using Aggregates in SAP BI
Illustrated Step-By-Step Guide To Performance Optimization Using Aggregates in SAP BI
Illustrated Step-By-Step Guide To Performance Optimization Using Aggregates in SAP BI
Applies to:
SAP NetWeaver BW. For more information, visit the EDW homepage
Summary
An aggregate is an object that stores a summarized subset of data in an InfoCube. This document provides a step-by-step insight into aggregate implementation on an InfoCube for the purpose of Performance Optimization. Author: Shyam Uthaman
Author Bio
Shyam Uthaman is working as SAP-BI Consultant. He is working simultaneously on multiple projects for different clients in Accenture.
Table of Contents
Introduction ......................................................................................................................................................... 3 What Is An Aggregate? ................................................................................................................................... 3 Purpose ........................................................................................................................................................... 3 Query Execution .............................................................................................................................................. 3 Illustrated Implementation Procedure ................................................................................................................. 4 Related Content ................................................................................................................................................ 10 Disclaimer and Liability Notice .......................................................................................................................... 11
Introduction
What Is An Aggregate? An aggregate stores the dataset of an InfoCube redundantly in a summarized form. In this instance, summarization means the condensing of the original fact table of an Infocube to an aggregate table. This table no longer contains certain characteristics of the Infocube and has been summarized across attributes, or to characteristic values, or a hierarchy level. The summarization enables you to access the data of an InfoCube quickly when reporting. Aggregates are, therefore, tools for enhancing performance. Aggregates are created from logical data packets (requests). You can distinguish between the processes of filling and rolling up here: The first time that data is loaded in an active aggregate is described as filling. After filling, the aggregate is used by reporting. Rolling up is understood as the loading of data packets from the fact table of an InfoCube in all of the aggregates for this InfoCube. Purpose Relational aggregates allow you to improve the performance of BI queries when data is read from an InfoCube. The data of a BI InfoCube is saved in relational aggregates in an aggregated form. Relational aggregates are useful if you want to improve the performance of one or more specific BI queries, or specifically improve the performance of reporting on characteristic hierarchies. Query Execution When the query is executed, it is clear to the user whether data is being read from an aggregate, a BI accelerator index, or an InfoCube. In the maintenance transaction, you can deactivate one or more aggregates on a temporary basis to test them for performance purposes or to analyze data consistency. You can also execute the relevant query in the query monitor (transaction RSRT) using a corresponding debug option: Choose Execute + Debug. In the Debug Options dialog box, choose Do Not Use Aggregates to execute the query with an InfoCube, as long as no BI accelerator index exists.
Now, Right-Click on the InfoCube and select Maintain Aggregates from the Context menu as shown below.
You will get the following pop-up. Select Generate Proposals so that the system automatically proposes Aggregates.
The following pop-up will open Here, select the runtime and time periods of queries to be analyzed.
As you can see below, a new aggregate by the name of STAT1 has been proposed by the system.
to the left of the aggregate name to display the properties of the aggregate.
Business requirements might require analysis to determine the need of an aggregate for specific values of characteristics. For example, in our case, a specific group of users always runs the query for Sales Organization= Asia (AREA4 in our case). In this case, right click on the Area InfoObject and select Fixed value from the context menu.
You will get the following pop-up to select the Area value. We will be Selecting Asia, i.e. AREA4.
Press
to confirm. You will reach the previous screen with the Fixed Selection value (AREA4) being
Now, after we have finished defining the aggregate, click on the Check Button, circled in red below, to check the definition of the aggregate.
Now Press the Activate and Fill Button, circled in red below to initiate the process of activation and filling in the data to aggregate from the InfoCube.
You will get the following pop-up. Press of the Start Button after selecting the Aggregate.
You will get the following pop-up. Press on the Immediate Button to start the job.
You will be redirected to the following screen where you will be able to see that the Status and filled fields are now green. This confirms that the aggregate creation was successful.
Related Content
http://help.sap.com/saphelp_nw70/helpdata/en/44/70f4bb1ffb591ae10000000a1553f7/content.htm http://help.sap.com/saphelp_scm50/helpdata/en/a8/48c0417951d117e10000000a155106/content.htm http://forums.sdn.sap.com/thread.jspa?threadID=1271346 For more information, visit the EDW homepage