You are on page 1of 6

SAP BPC 5.0 & 5.

1 Performance and Reliability tips

Applies to:
EPM-BPC 5.0 and 5.1 For more information, visit the Enterprise Performance Management homepage.

Summary
This is short list of hints to solve common performance and reliability issues of SAP Business Performance and Consolidation (aka BPC) 5 and 5.1. Most of them were come from troubleshooting of escalated customers. Since BPC 7 for Microsoft is direct child of 5.1, many of these hints are still valid even under BPC 7 for Microsoft platform. Author: Seongbae Kim

Company: SAP Created on: 15 December 2008

Author Bio
BPC Lead developer RIG customer care team

SAP COMMUNITY NETWORK 2009 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 1

SAP BPC 5.0 & 5.1 Performance and Reliability tips

Table of Contents
EVDRE query issue (error) .................................................................................................................................3 SQL 2000 OLAP with default provider................................................................................................................3 Timeout error of logic .......................................................................................................................................3 IIS authentication in application server...............................................................................................................3 InApp property ....................................................................................................................................................4 EVDRE design pattern........................................................................................................................................4 SQL 2005 Analysis Service parameters.............................................................................................................4 SQL tempdb tuning.............................................................................................................................................5 Avoid using multiple level calculation .................................................................................................................5 Copyright.............................................................................................................................................................6

SAP COMMUNITY NETWORK 2009 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 2

SAP BPC 5.0 & 5.1 Performance and Reliability tips

EVDRE query issue (error)


If user has white dialog EVDRE error in their Excel client, we have following checkpoints: Version of SQL Analysis Service. If it is low, apply Microsoft cumulative updates for SQL 2005 SP2 is highly recommended. Additional information of SQL 2005 updates is in following address: http://support.microsoft.com/kb/937137/LN/ If there is no error in server log (evdataserver_debug.txt), client EVDRE_LOG.txt must be checked. If there is a problem regarding decompress, BPC 5.1 SP2 PATCH3 OR SP3 (or above) with DO_COMPRESS option is answer. Note that DO_COMPRESS option is making response from server non-compressed. Noncompressed response is default protocol in BPC 7 for MS.

SQL 2000 OLAP with default provider


If users system using SQL 2000 with BPC 5.x, following option is highly recommended to prevent memory leak of application server: Change or create a system parameter, USEADOMD with 0 as value of it. Change or create an application parameter, OLAPEXTRACONN with Client Cache Size=5000 as value of it. 5000 is 5Mbytes. It can be changed to any other value you want to use size of cache. To use this method, you must install ADOMD.NET provider to application server. It is provided in Server folder of BPC installation package. Note that default provider of SQL 2000 has potential memory leak in application server.

Timeout error of logic


If there is logic timeout problem, following logic statements may help to resolve it. XDIM_MEMBERSET to define source range. If logic script is using dedicated range of members in dimension, this is always recommended to use. (Ex: XDIM_MEMBERSET CATEGORY = ACTUAL, BUDGET) XDIM_MAXMEMBERS to define number of record can be processed at once. If range of source exceeds this value, an internal loop will be generated to process all of intersection in range by this value. (Ex: XDIM_MAXMEMBERS Entity = 50)

IIS authentication in application server


In BPC5, authentication method of IIS is integrated only in some of customers configuration. This is not following BPCs standard configuration but working because of architecture of BPC 5.x even it is working fine, apparently. But under this configuration, SQEs detail debug log (EVDATASERVER_DEBUG.txt) is not able to populate.

SAP COMMUNITY NETWORK 2009 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 3

SAP BPC 5.0 & 5.1 Performance and Reliability tips

InApp property
In BPC 5 with SQL 2005, limited number of dimension property can be InApp property. InApp properties are stored in both of mbr table and OLAP cube. Only InApp properties can be used in MDX statement. Definition of MDX statement in BPC is following: Property in member formula. (Ex: [TIME].PREVMEMBER.PROPERTIES(MONTHNUM)) MDX syntax logic. (Ex: *XDIM_MEMBERSET TIME=STRTOMEMBER([+TIME].[%TIME_SET%].PROPERTIES(MONTHNUM)+)) Typical property check routine of logic script is using MBR table. (Ex: *WHEN ENTITY.GEO *IS ASIA) Number of InApp is affecting overall performance of data retrieval. Especially, ROLAP partition of cube. So, reduce number of InApp property is always recommended. With many properties, difference is significant. Note that InApp property with SQL 2000 is not tested in same way as SQL 2005.

EVDRE design pattern


One pattern of EVDRE report/schedule design that must avoid is multiple nested expansions with suppression. Suppression is going to make long non-optimized MDX query and potentially executing forever. And it is consuming a lot of CPU and memory in both of OLAP and application server. It is so temptation pattern but need a lot of consideration to use.

SQL 2005 Analysis Service parameters


To get maximum performance of SQL 2005 Analysis Service, default parameter setting must be tuned with following suggestion: CoordinatorExecutionMode - This value can be changed with careful test. Negative number is controlling number of jobs that running by each CPU. Positive number is controlling number of jobs running by whole CPU. ThreadPool\Process\MaxThreads - General recommendation is less than or equal to 10 times of CPU. But can be increase if there are a lot of small MDX queries than one big MDX query. Default (64) also can be widely accepted for most of time. If OLAP server is using 16 or more CPU, set it to higher number to use 100% of CPU. ThreadPool\Query\MaxThreads - Most magical and mystic parameter to control thread of query. General recommendation is two less than or two times of number of CPU. Can be increased with careful test. In case of lots of small MDX query, increase to higher than general recommendation is also an option. Above 3 parameters are most important. If report or input schedule designed to multiple piece of small MDX query (in the other word, multiple EVDRE), higher than general may helps the performance issue.

SAP COMMUNITY NETWORK 2009 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 4

SAP BPC 5.0 & 5.1 Performance and Reliability tips

SQL tempdb tuning


Since SQE (Shared Query Engine), business rule, SG (Send governor) are using temporary table heavily and frequently, optimize tempdb in SQL server is very important. Following optimization is highly recommended in both of SQL 2000 and 2005. Make tempdb data files to equal number that CPU of SQL server. Turn off auto-file growth of tempdb files. And set enough size of initial file size to each tempdb files. But there is serious problem if total amount of tempdb space is not enough in runtime. So, initial size of file must be decided carefully. Set initial size of each tempdb files are same. In weight round-robin mechanism of SQL server, bigger file has more priority. So, same size of data files is important to spread read/write activities. Place each tempdb files to different logical/physical disk volume if possible. Practically, it is almost impossible because equal number of physical drive is difficult to implement. Even in logical volume also. Turn on SQL trace flag 1118. Simple command DBCC TRACEON (1118) is making that change but not globally. To make it system default, change it by SQL startup setting is necessary. (Note this trace flag 1118 is not required to use in SQL 2005.) These changes are regarding tempdb. The contents of SQL performance is a size of books. Other SQL performance tuning is always important.

Avoid using multiple level calculation


Regarding SQL 2005 Analysis Services calculation performance issue, avoid using multiple-level calculation. In simple example, do not use calculated member to use the source of other calculated member. If any MEASURE member has multiple-level calculation, performance of that MEASURE will be greatly worse.

SAP COMMUNITY NETWORK 2009 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 5

SAP BPC 5.0 & 5.1 Performance and Reliability tips

Copyright
2009 SAP AG. All rights reserved. No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice. Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. Microsoft, Windows, Outlook, and PowerPoint are registered trademarks of Microsoft Corporation. IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iSeries, pSeries, xSeries, zSeries, System i, System i5, System p, System p5, System x, System z, System z9, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, Informix, i5/OS, POWER, POWER5, POWER5+, OpenPower and PowerPC are trademarks or registered trademarks of IBM Corporation. Adobe, the Adobe logo, Acrobat, PostScript, and Reader are either trademarks or registered trademarks of Adobe Systems Incorporated in the United States and/or other countries. Oracle is a registered trademark of Oracle Corporation. UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group. Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix Systems, Inc. HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C, World Wide Web Consortium, Massachusetts Institute of Technology. Java is a registered trademark of Sun Microsystems, Inc. JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape. MaxDB is a trademark of MySQL AB, Sweden. SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver, and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned are the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary. These materials are subject to change without notice. These materials are provided by SAP AG and its affiliated companies ("SAP Group") for informational purposes only, without representation or warranty of any kind, and SAP Group shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP Group products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional warranty. These materials are provided as is without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement. SAP shall not be liable for damages of any kind including without limitation direct, special, indirect, or consequential damages that may result from the use of these materials. SAP does not warrant the accuracy or completeness of the information, text, graphics, links or other items contained within these materials. SAP has no control over the information that you may access through the use of hot links contained in these materials and does not endorse your use of third party web pages nor provide any warranty whatsoever relating to third party web pages. Any software coding and/or code lines/strings (Code) included in this documentation are only examples and are not intended to be used in a productive system environment. The Code is only intended better explain and visualize the syntax and phrasing rules of certain coding. SAP does not warrant the correctness and completeness of the Code given herein, and SAP shall not be liable for errors or damages caused by the usage of the Code, except if such damages were caused by SAP intentionally or grossly negligent.

SAP COMMUNITY NETWORK 2009 SAP AG

SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com 6

You might also like