Performance Management in Data Loading: an Overview

Similar documents
Step by Step Procedure for DSO Creation

Standalone BW System Refresh

Cut Over Activities Specific for LIS* Data Sources

Extracting Missing Fields of Data Source Which Are Present In Their Extract Structure

DB Connect with Delta Mechanism

Process Chain Log Deletion

How to Check BW system Before Go-Live

How to Create View on Different Tables and Load Data through Generic Datasource based on that View

Step by Step Method for File Archival in BW

Database Statistics During ODS Activation

How to Default Variant Created for Report Developed In Report Painter/Writer

All about Compression

Generate Export Data Source

Using Radio Buttons in Web Template

Step-By-Step guide to Virtual InfoCube Implementation

Performance Tuning in SAP BI 7.0

BW Reconciliation. Applies to: Summary. Author Bio

SDN Community Contribution

Limitation in BAPI Scheduling Agreement (SA) Create or Change

Errors while Sending Packages from OLTP to BI (One of Error at the Time of Data Loads through Process Chains)

How to use Boolean Operations in the Formula as Subsidiary for IF Condition

Linking Documents with Web Templates

Recreating BIA Indexes to Address the Growth of Fact Index Table

Material Master Archiving in Simple Method

Material Listing and Exclusion

Changing the Source System Assignments in SAP BW Objects without Affecting the Data Modeling

Explore to the Update Tab of Data Transfer Process in SAP BI 7.0

Extraction of Hierarchy into Flat File from R/3 and Loading in BW System

Data Extraction & DS Enhancement in SAP BI Step by Step

How to Create and Schedule Publications from Crystal Reports

Implying Security on Business Object XI 3.1 Universe having SAP BW as Source

Reading Enhanced DataSource fields for the Remote Cube

Easy Lookup in Process Integration 7.1

How to Work with F4 Input Help Effectively in BEX

Table Row Popup in Web Dynpro Component

MDM Syndicator: Custom Items Tab

Reporting Duplicate Entries

Creation of Key Figures with Higher Decimal Place Precision

List of Values in BusinessObjects Web Intelligence Prompts

Integration of Web Dynpro for ABAP Application in Microsoft Share Point Portal

POWL: Infoset Generation with Web Dynpro ABAP

Step by Step Guide How to Use BI Queries in Visual Composer

How to Broadcast BEx Workbooks using BW Pre-calculation Server and through Process Chains

About ITAB Duplicate_Key (SAP lrsaods) Runtime Error

Step By Step: the Process of Selective Deletion from a DSO

Loading the Data for Time Dependent Hierarchy in SAP BI

A Step-by-Step Guide on IDoc-ALE between Two SAP Servers

Using Query Extract to Export Data from Business warehouse, With Pros and Cons Analyzed

This article explains the steps to create a Move-in letter using Print Workbench and SAPScripts.

How to Display Result Row in One Line While Reporting On Multiproviderer

Data Source Replication and Activation of Transfer Structures

Open Text DocuLink Configuration - To Access Documents which are Archived using SAP

Data Flow During Different Update Mode in LO Cockpit

Steps to Activate ALE Delta for Custom Master Datasource Created on ZTable

Maintaining Roles and Authorizations in BI7.0 - RSECADMIN

Financial Statement Version into PDF Reader

Step by Step Guide on How to Use Cell Definition in BEx Query

Graphical Mapping Technique in SAP NetWeaver Process Integration

How to Create Top of List and End of List of the ALV Output in Web Dynpro for ABAP

SAP BI Analysis Authorization (Customer Exit Variables)

Add /Remove Links on ESS Home Page in Business Package 1.5

Load Info Cube in SCM 5.0 (BI 7.0)

Role and Scope of ABAP in SAP BI

Customized Transaction to Trigger Process Chain from Failed Step

Transfer Material Attributes (Material Type) from R/3 to SAP GRC Global Trade Services (GTS)

Replacement Path: Explained with an Illustrated Example

Using Nested Exception Aggregation in BEx Reports- Scenario

How to Reference External JAR Files in Web Dynpro DC in SAP NW Portal 7.3

Developing Crystal Reports on SAP BW

Server Connectivity and Data Load from Non SAP System to BW

Triggering the Process Chains at Particular Date using Events

Open Hub Destination - Make use of Navigational Attributes

Data Mining: Scoring (Linear Regression)

Data Mining: Decision Trees

SAP Net Weaver 400s BI 7.0For more information, visit the Business Intelligence homepage.

How to Configure User Status in mysap SRM

Procedure to Trigger Events in Remote System Using an ABAP Program

Setting up Connection between BW and R/3 for Data Load

Managing Transports in SAP BW 3.5 and BI 7.0

Web Dynpro ABAP: Dynamic Table

Creation of Sets in SAP-ABAP, How to Read them INI SAP-ABAP Reports

Analysis Process Designer (APD) Step by Step Business Intelligence

MDM Import Manager - Taxonomy Data (Attribute Text Values) Part 3

Web Dynpro: Coloring Table Conditionally

Real Time Data Acquisition (RDA) Overview and Step-by-Step Guide (SAPI and Web Services)

Steps for Implementation of Standard Data Store Object (DSO) for Purchase Cube in SAP BI 7.0

Step by Step Guide for PI Server Start and Stop Procedure

Information Broadcasting Part 3 Scheduling the First Report

SMT (Service Mapping Tool)

Data Inconsistency in the Cube and Aggregate

ABAP HR: Standard Info Type Enhancement

Common Production Failures Encountered at BW Production Support

Hierarchy in Business Objects with Expanded Hierarchy Logic

Dynamically Enable / Disable Fields in Table Maintenance Generator

Template Designer: Create Automatic PDF Documents for Attachment or Print Purpose

SAP BW Copy Existing DTP for Data Targets

Freely Programmed Help- Web Dynpro

Purpose of Goods Receipt Message indicator in Purchase Orders

Creating Custom SU01 Transaction Code with Display and Password Reset Buttons

Custom Process types Remote Trigger and End Time

Transcription:

Performance Management in Data Loading: an Overview Applies to: SAP BI 7.0 / SAP Net weaver 2004s (Support package 14-17). For more information, visit the EDW homepage. Summary This documents talks about various checks for performance improvement in data extraction and data staging for timely information retrieval. Author: Saurabh Choudhary Company: Infosys Technologies Limited Created on: 22 nd June 2010 Author Bio Author is currently working as Consultant in Infosys Technologies Limited. 2010 SAP AG 1

Table of Contents Performance management in Data loading... 3 Data Extraction... 4 Custom code extraction performance... 4 Data transfer parameters... 4 Application specific setup... 4 Extractor performance... 4 Analyze database performance... 4 Data Staging... 5 Data load parameters... 5 Preference to trfc option instead of IDOCs... 5 Need of PSA... 5 Preference to ASCII files instead of CSV... 5 Custom transformation rules performance... 5 Availability of master data prior to transaction data... 5 Number range buffering check... 5 Parallelize multiple data loads... 6 Deletion of indexes prior to data load & re-creation... 6 Database statistics & performance... 6 Related Content... 7 Disclaimer and Liability Notice... 8 2010 SAP AG 2

Performance management in Data loading To provide information in time, Performance of data loads and data maintenance plays a vital role. BI Administrator Cockpit is used for performance analysis in data loading and data management. Transaction code RSMO can help to retrieve detailed information. Five major steps are taken in processing a request. As per the analysis among above steps Transformation takes the maximum time followed by Surrogate key generation. The runtime depends on the complexity of the transformations and the information model. There are two different staging processes available, the classic info Source staging process with transfer and update rules and the new Data Source staging process with transformations. In the classic staging process transfer, rules will typically take some 1/3rd of the time and update rules take remaining time. Careless use of user exits, transformations, transfer rules, or update rules causing most of the performance problems in extraction and staging process. From performance point of view pricey database operations and calculations should either be avoided or carefully reviewed and optimized (for example, by replacing single record database reads by multiple record database reads in the start or end routine). While much of the data transformation performance is under control of the user, consequent data maintenance steps such as Data Store Object data activation attribute change runs, or aggregated rollups are predefined by system and can only be influenced only by changing the information model or optimizing database performance. 2010 SAP AG 3

Data Extraction Data extraction performance largely depends on the data model and data volume of the source system application. Still a few things can be done to improve overall data extraction performance Custom code extraction performance We write custom code in user exits or in the implementation of generic function module extractors. We should ensure that those are implemented in the most efficient way. We may use transaction SE30 to further analyze the run time delivered or custom extraction programs. Data transfer parameters Various parameters including the size of data packages, the frequency of sending status information, the maximum number of parallel processes to be used, can be defined in transaction SBIW. We may increase the number of processes and the size of the individual data packages and reduce the frequency of status IDOCs to improve the performance of the extraction process depending on the availability of system resources. Specific recommendations for parameter settings are available at the SAP Service Marketplace but there is limited potential for improving extraction performance by changing these parameters. Application specific setup There are various application specific options and settings in transaction SBIW that influence data extraction performance for the corresponding applications. Extractor performance In Transaction RSA3 detailed analysis of actual extractor performance can be done using debug mode. RSA3 transaction allows testing of extractor without having an SAP BW system requesting data. Analyze database performance In many situation up to date database statistics and index addition to extracted database tables help to improve extraction performance. 2010 SAP AG 4

Data Staging Flaws in the information model or in custom transformations cause bad performance in data staging process more commonly. An organized investigation helps to get root cause of the performance issues occured. Data load parameters We should set data load and other parameter using transaction SPRO (customizing) according to SAP recommendations. We should remember that defaults settings can be overridden by settings made in the Info packages or data transfer process for data package size and other parameters. These parameters setting changes at info package or data transfer process level may help in various situations. For example, help to increase the overall data package size where certain memoryintensive extractors or data staging processes need to run with lower data package size. Preference to trfc option instead of IDOCs It is not normally used anymore now a day. We should be sure to toggle the data transfer mode to trfc where it is set to IDOCs. It will help to reduce the overhead implied in IDOC processing. Need of PSA We need to be sure if PSA is required as an intermediate storage (for example, for error handling purposes) or not, and if not then we should turn it off. Particularly in an Enterprise Data Warehousing setup with a separate data staging layer, PSA is not needed. Preference to ASCII files instead of CSV We should consider changing file format from CSV to plain ASCII files with fixed field lengths for better performance. Custom transformation rules performance Transformations are executed for every single record. Inefficient and complex implemented custom transformations cause performance issues. We should try to put custom code as part of start or end routine wherever possible. We should follow common ABAP performance guidelines when implementing the custom code. We may use transaction SE30 to perform a runtime analysis of update process. Availability of master data prior to transaction data We should load master data prior to transaction data. It helps to reduce the need of new surrogate keys creation for master data and improves data-load performance considerably. Number range buffering check Transaction NRIV can be used to switch on number range buffering. Competent number range buffering reduces the time required to create new dimension keys and SIDs. 2010 SAP AG 5

Parallelize multiple data loads We should try to maximize use of existing memory resources and CPU. We may scale Data staging processes with number and speed of CPUs in SAP BW scale in very well manner. Introducing parallel loads do not speed up individual data staging processes but it helps in reducing overall time required for data load. Deletion of indexes prior to data load & re-creation We should try to delete indexes before the data load and recreate indexes after all data loads have been completed. This helps to prevent the incident of degenerated indexes as well which causes degradation in reporting performance. Database statistics & performance Inaccurate and incomplete master data indexes and statistics can cause striking performance drops. It is must to get master and transaction data as part of the update process read by SAP BW. We should add indexes to extracted database tables and should keep the database statistics up to date. It helps to enhance extraction performance in various instances 2010 SAP AG 6

Related Content http://help.sap.com Mastering the SAP Business Information Warehouse (Second Edition) For more information, visit the EDW homepage. 2010 SAP AG 7

Disclaimer and Liability Notice This document may discuss sample coding or other information that does not include SAP official interfaces and therefore is not supported by SAP. Changes made based on this information are not supported and can be overwritten during an upgrade. SAP will not be held liable for any damages caused by using or misusing the information, code or methods suggested in this do cument, and anyone using these methods does so at his/her own risk. SAP offers no guarantees and assumes no responsibility or liability of any type with respect to the content of this technical article or code sample, including any liability resulting from incompatibility between the content within this document and the materials and services offered by SAP. You agree that you will not hold, or seek to hold, SAP responsible or liable with respect to the content of this document. 2010 SAP AG 8