Top Banner
SAP COMMUNITY NETWORK DRAFT © 2012 SAP AG 1 Best Practices for SAPBO BI 4.0 Adaptive Processing Servers Applies to: SAP BusinessObjects BI 4.0, Summary: This whitepaper summarizes best practices, tuning, configuration and troubleshooting to help make your SAP BusinessObjects Adaptive Processing Server perform best. There are plenty of additional whitepapers / notes which delve into significant detail this whitepaper is meant to be a handy summary for an administrator familiar with SAP BusinessObjects Enterprise BI4.0 platform. Document Owner: Jan De Vilder Senior Certified BI / MoBI Consultant SAP Belgium Luxembourg SAP Levallois - France [email protected] Company: SAP Last update: September 6, 2012
34

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Oct 30, 2014

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK DRAFT

© 2012 SAP AG 1

Best Practices for SAPBO BI 4.0

Adaptive Processing Servers

Applies to:

SAP BusinessObjects BI 4.0,

Summary:

This whitepaper summarizes best practices, tuning, configuration and troubleshooting to help make your SAP BusinessObjects Adaptive Processing Server perform best. There are plenty of additional whitepapers / notes which delve into significant detail – this whitepaper is meant to be a handy summary for an administrator familiar with SAP BusinessObjects Enterprise BI4.0 platform.

Document Owner: Jan De Vilder

Senior Certified BI / MoBI Consultant SAP Belgium – Luxembourg SAP Levallois - France [email protected]

Company: SAP

Last update: September 6, 2012

Page 2: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 2

Table of Contents

Table of Contents ............................................................................................................................................... 2

1 Document update history ...................................................................................................................... 4

2 Background ........................................................................................................................................... 4

3 Architecture overview ............................................................................................................................ 5

4 Adaptive Processing Server Services ................................................................................................... 6

5 Best practices for BOE server configuration ......................................................................................... 9

5.1 Introduction............................................................................................................................................ 9

5.2 Adding multiple APS servers............................................................................................................... 10 5.2.1 How to create a new APS server in the CMC .............................................................................................. 10

5.2.2 Cloning APS servers ................................................................................................................................... 12

5.3 Starting point after installing BI4.0 ...................................................................................................... 13 5.3.1 CLONE the original Adaptive Processing Server (APS) .............................................................................. 13

5.3.2 Add a dedicated APS for DSL BRIDGE Service .......................................................................................... 13

5.3.3 Add a dedicated APS for SEARCH Index .................................................................................................... 13

5.3.4 Add a dedicated APS for ANALYSIS (Multi Dimensional Analysis Service - Analysis for OLAP) ................ 14

5.3.5 Add dedicated APS for ALL OTHER NECESSARY Services ...................................................................... 14

6 Other APS servers to consider............................................................................................................ 15

6.1 Separate APS for DSLBridge Service ................................................................................................. 15 6.1.1 Isolating DSLBRIDGE: ................................................................................................................................ 15

6.1.2 Memory options for DSLBRIDGE: ............................................................................................................... 15

6.2 Separate APS for Search Service ....................................................................................................... 16

6.3 Separate APS for Analysis .................................................................................................................. 17

6.4 Separate APS for Life Cycle Manager (LCM) ..................................................................................... 17

6.5 Configure the APS to handle concurrent publications. ....................................................................... 18

6.6 Separate APS for Heavy Visualisations (Charting) ............................................................................. 18

6.7 Other APS to consider ........................................................................................................................ 19

6.8 Separate APS for unnecessary Services ............................................................................................ 19

6.9 Keep the original APS ......................................................................................................................... 19

6.10 General APS recommendations ......................................................................................................... 19

6.11 Command Line Parameters ................................................................................................................ 20

6.12 Overview of available JVM –X parameters ......................................................................................... 21

7 Configuring, monitoring and tracing APS ............................................................................................ 22

7.1 Analyzing APS memory consumption by Heap Dump generation ..................................................... 22 7.1.1 Heap Dump generation:............................................................................................................................... 22

7.1.2 Using MAT to Analyze SAP ME Heap Dumps: ............................................................................................ 22

7.2 Stop unnecessary servers ................................................................................................................... 22

7.3 Multi-instances deployment................................................................................................................. 23

7.4 Configuring BICS Result Chunk Sizes (BICS) .................................................................................... 23

7.5 Adapting the parameters for LOV chunk size ..................................................................................... 24 7.5.1 For Interactive Analysis Desktop (i.e. WebI Rich Client): ............................................................................ 24

7.5.2 For BOE WebIReportServer: ....................................................................................................................... 24

7.5.3 For DSL-BICS layer: .................................................................................................................................... 25

7.6 How to monitor DSLBRIDGE memory usage ..................................................................................... 27

Page 3: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 3

7.7 Getting Traces for investigation .......................................................................................................... 28

8 BOE platform settings ......................................................................................................................... 29

8.1 CMS settings ....................................................................................................................................... 29

8.2 Web application server (Tomcat) ........................................................................................................ 29

8.3 Avoid background activities................................................................................................................. 29

9 Deployment Examples ........................................................................................................................ 30

9.1 Deployment example 1 ....................................................................................................................... 31

9.2 Deployment example 2 ....................................................................................................................... 32

10 Additional Information ......................................................................................................................... 33

Copyright .......................................................................................................................................................... 34

Page 4: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 4

1 Document update history

Version Modification By(*) Date Comment

0.2 Jan De Vilder June 12th,

2012 DRAFT first version proposed for review.

0.3 Jan De Vilder June 13th,

2012 DRAFT second version proposed for review.

0.4 Jan De Vilder June 20th,

2012 DRAFT third version proposed for review.

0.5 Jan De Vilder June 26th,

2012 DRAFT fourth version proposed for review.

1.0 Jan De Vilder August 7th,

2012

Pre-Final version

1.1 Jan De Vilder September 6

th, 2012

Final Version to be published

(*) Many people, consultants, product specialists, architects, support engineers… have contributed to this document while adding, modifying or reviewing content.

2 Background

The default installation of SAP BusinessObjects Business Intelligence Platform installs one Adaptive Processing Server (APS) per host system. The Adaptive Processing Server is a generic server that hosts services responsible for processing requests from a variety of sources.

This default configuration is not always optimal, as all services run on a single java APS instance, with a maximum java heap size allocation of 1 GB RAM.

The best practices described in this document help the BI Administrator to optimally configure the APS in BOE BI4.0.

This document is based on the server architecture in BI4.0 SP2 patch 2.12 minimum. APS services are updated on regular basis for every new Service Pack, Support Pack, or Fix Pack. The services listed in this document can get outdated, hopefully not causing confusion.

This document is particularly focused on isolation of services in a dedicated APS.

Page 5: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 5

3 Architecture overview

Tiers:

SAP BusinessObjects Business Intelligence platform can be thought of as a series of conceptual tiers:

Client tier

Management tier

Storage tier

Processing tier

Data tier

The APS is a part of the Processing tier.

By default, the BI4.0 platform contains one Adaptive Processing Server (APS) per host system. The Adaptive Processing Server is a generic server that hosts multiple services responsible for processing various requests.

Page 6: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 6

4 Adaptive Processing Server Services

The table below lists all services that are part of the APS (in BI4.0):

Service Service Category Service Description Application

Adaptive Connectivity Service

Connectivity Services Provides connectivity services (replaces Connection Server).

Web Intelligence, Dashboards (Xcelsius), Crystal Reports, Explorer

BEx Web Application Service

Analysis Services Provides integration of SAP Business Warehouse (BW) Business Explorer (BEx) web applications with BI launchpad.

BEx

Client Auditing Proxy Service

Core Services Collects auditing events sent from clients and forwards them to the CMS server.

Client tools as Interactive Analysis Desktop

Custom Data Access Service

Connectivity Services Provides dynamic connections to data sources that do not require a Connection Server. This service allows accessing and refreshing reports created using some personal data provider like CSV files.

Web Intelligence, Dashboards (Xcelsius)

Data Federation Service

Data Federation Services

Enables multi-source universes by distributing queries across disparate data sources federates data through a single data foundation

Web Intelligence, Dashboards (Xcelsius), Crystal Reports for Enterprise, Explorer

Document Recovery Service

Web Intelligence Services

Web Intelligence document auto-save and recovery.

Web Intelligence

DSL Bridge Service

Web Intelligence Services

Dual Semantic Layer (DSL) session support. Optimizes BICS connectivity for SAP NetWeaver BW. Handles UNX SQL/LOV generation for relational sources.

Web Intelligence, Dashboards (Xcelsius), Crystal Reports for Enterprise, Explorer

Excel Data Access Service

Web Intelligence Services

Supports Excel files uploaded to SAP BusinessObjects BI platform as data sources.

Web Intelligence, Dashboards (Xcelsius)

Web Intelligence Monitoring Service

Web Intelligence Services

Monitors Web Intelligence Servers. Web Intelligence

Page 7: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 7

Service Service Category Service Description Application

Insight to Action Service

Core Services Enables actions to be invoked and provides support for Report to Report Interface (RRI)

Crystal reports Dashboards (Xcelsius)

Lifecycle Management ClearCase Service

LifecycleManagement Services

LCM supports either SubVersion or ClearCase to support versioning of objects. This service is to manage the ClearCase support

LCM

Lifecycle Management Service

LifecycleManagement Services

Lifecycle Management Core service.

LCM

Monitoring Service

Core Services Provides monitoring functions All

Multi Dimensional Analysis Service

Analysis Services Provides access to multi-dimensional Online Analytical Processing (OLAP) data; converts the raw data into XML, which can be rendered into Excel, PDF, or Analysis (formerly Voyager) crosstabs and charts.

Analysis for OLAP

Platform Search Service

Core Services Provides searching functionality for the platform.

Search

Publishing Post Processing Service

Core Services Performs actions on reports after they have completed, such as sending a report to a specific output location.

Publications of Web Intelligence or Crystal reportsl

Publishing Service

Core Services Coordinates with the Publishing Post Processing Service and Destination Job Service to publish reports to a given output location, such as the file system, FTP, email, or a user‟s inbox.

Publications of Web Intelligence or Crystal reports

Rebean Service Web Intelligence Services

SDK used by Web Intelligence and Explorer

Web Intelligence Explorer

Security Token Service

Core Services SAP Single Sign-On support. Offers Single Sign On (SSO) capability to connect to SAP BW data sources.

All

Translation Service

Core Services Translates InfoObjects with input from the Translation Manager client.

All

Page 8: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 8

Service Service Category Service Description Application

Visual Difference Service

LifecycleManagement Services

Determines whether documents are visually identical for doc promotion and Lifecycle Management. Currently users can view the difference between 2 LCMBIAR files or LCM Jobs.

LCM

Visualization Service

Web Intelligence Services

Common Visualization Object Model Service, used by Web Intelligence for charts rendering in WebI reports. The CVOM is dedicated to Web Intelligence reporting. It is what creates the charts displayed in a Web Intelligence document.

Web Intelligence

Crystal for Enterprise

Page 9: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 9

5 Best practices for BOE server configuration

5.1 Introduction

SAP Note 1694041 (How to size the Adaptive Processing Server), explains in examples how each APS container could be configured. This approach will result in improved response times and larger throughput, but at the expense of higher overall memory utilization on the platform due to the increased number of Java Virtual Machines.

The example in above mentioned SAP Note creates the following APS servers with required memory:

APS Server Recommended

-Xmx by SAP Note 1694041

Data Access DSL -Xmx4g

MDAS OLAP Analysis -Xmx4g

BEx WAD -Xmx2g

Data Access Other -Xmx2g

Life Cycle Manager -Xmx2g

Auditing -Xmx1g

Publishing -Xmx1g

Multi Source Federation -Xmx2g

Monitoring -Xmx2g

Platform Search -Xmx2g

Translation -Xmx2g

Visualization Service (CVOM Charting) -Xmx2g

Total amount of required RAM: 26 Gbyte

On a 32 Gbyte BOE server, there is only 6 Gbyte working memory left.

Conclusion:

The advantage if the approach described in this SAP Note, is very useful to isolated workflows for easier troubleshooting and the ability to turn-off specific features without requiring downtime.

The approach assumes that customers use all features of BI 4.0. If customers are not using Content Search, MDAS, or BW connectivity, then move all these unused services is a single APS , and stop this APS.

It is not recommended to remove or delete unused services from the system. Services that are not currently in use may later be needed as business processes evolve and new features are required.

Stopping unused services is typically a task of consulting since it is important to understand what each sub-service is responsible for and how they interact with one another.

Page 10: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 10

5.2 Adding multiple APS servers

5.2.1 How to create a new APS server in the CMC

You can run multiple instances of the same server on the same machine. To add an APS server, follow the steps below:

1. Log in CMC as Administrator

2. Go to Organize section, choose “Servers”

3. In this example, create a new “Data Access DSL” APS container. On the Manage menu, click “New” > “New Server”

Page 11: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 11

4. The "Create New Server" dialog box appears. Choose the “Service Category”

5. Choose the type of service that you need from the Select Service list, then click Next. To add an additional service to the server, select the service in the Available Additional Services list and click “>”.

6. After adding the additional services you want, click Next. If your BI platform architecture is composed of multiple nodes, choose the node where you want to add the new server from the Node list.

7. Type a name for the server in the Server Name box. Each server on the system must have a unique name. The default naming convention is <NODE NAME>.<servertype> (a number is appended if there is more than one server of the same type on the same host machine).

To include a description for the server, type it into the Description box.

8. Click Create.

The new server appears in the list of servers in the Servers area of the CMC, but it is neither started nor enabled.

9. Review the configuration settings of the created server !

10. Use the CMC to start and enable the new server when you want it to begin responding to BI platform requests.

Page 12: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 12

5.2.2 Cloning APS servers

If you want to add a new server instance to your deployment, you can clone an existing server. The cloned server retains the configuration settings of the original server. This can be particularly useful if you are expanding your deployment and want to create new server instances that use almost all of the same server configuration settings as an existing server.

There is no particular recommendation or best practice on whether to clone servers or whether to create new servers.

When cloning an APS server, it might be necessary to remove unnecessary services afterwards.

When creating a new APS, it is necessary to add the required services.

The best practice is to keep the original APS for further use and not delete it!

Page 13: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 13

5.3 Starting point after installing BI4.0

What might be done immediately after installing BI4.0? After installing BI4.0 with any SP or patch, the steps below should be considered as an initial configuration. These steps are based on cloning. By creating new servers, the same result can be obtained.

When creating multiple Adaptive Processing Servers, it is recommended to keep services together in one APS that belong to the same service category.

Make sure all APS-services are always available in an APS, no matter when it‟s running, disabled or stopped. The core-APS-services are always needed!

It is not recommended to remove or delete unused services from the system. Services that are not currently in use may later be needed as business processes evolve and new features are required.

Before creating any additional APS servers, it is recommended to analyze what tools will be used in the BI4.0 environment. The final configuration is highly dependent on the individual customer requirements.

The steps below will propose a change of Xmx parameter values. There is no need to change the Xms parameters. Keep the default Xms value.

5.3.1 CLONE the original Adaptive Processing Server (APS)

This best practice is added here, after discovering that many customers modified, corrupted or even deleted the original APS, and could not revert back to the original settings. It is better to keep the original APS for further use. Therefore, stop the original APS and disable it.

After the BI4.0 installation, for each node, one AdaptiveProcessingServer is found in CMC / Servers / Nodes.

CLONE the original AdaptiveProcessingServer.

STOP the original APS and put the start-up type to manual. Uncheck the checkbox: “Automatically start this server when the SIA starts”.

5.3.2 Add a dedicated APS for DSL BRIDGE Service

This APS will optimize BICS connectivity and will handle UNX SQL/LOV generation for relational sources. This APS will only work optimal when sufficient memory is allocated.

CLONE the original APS

Include following Services in this APS:

o DSL Bridge Service

Remove all other services

Change Xmx1g to something between Xmx4g or Xmx8g, depending on your deployment

5.3.3 Add a dedicated APS for SEARCH Index

CLONE the original APS

Include following Services in this APS:

o Platform Search Service

Go to the Application area of the CMC, choose the “Platform Search Application”: o Change Level of indexing to “Platform Metadata” o Set action for Error Recovery to “Rebuild Index” o De-select Content type “Universes”

Remove all other services

If this APS for Search is intensively used, change Xmx1g to Xmx2g or Xmx3g, depending on your deployment

To avoid using Search on content in BI Launchpad, stop this APS.

Page 14: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 14

5.3.4 Add a dedicated APS for ANALYSIS (Multi Dimensional Analysis Service - Analysis for OLAP)

If the applications, “Analysis for OLAP” or “BEx Web”, are not used, this step can be skipped. This service is also used to create and edit OLAP connections.

CLONE the original APS

Include following Services in this APS:

o Multi Dimensional Analysis Service o BEx Web Application Service

Remove all other services

If this MDAS is intensively used, change Xmx1g to something between Xmx4g or Xmx8g, depending on your deployment

This setting should be optimal for 50 Concurrent Active Users

5.3.5 Add dedicated APS for ALL OTHER NECESSARY Services

CLONE the original APS

Remove following Services in this APS (since they got a dedicated APS already):

o Multi Dimensional Analysis Service o BEx Web Application Service o Platform Search Service o DSL Bridge Service o Remove all other services not necessary for your deployment

Change Xmx1g to something between Xmx2g or Xmx4g, depending on your deployment

Page 15: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 15

6 Other APS servers to consider

Before creating any additional APS servers, it is recommended to analyze what tools will be used in the BI4.0 environment. The final configuration is highly dependent on the individual customer requirements.

6.1 Separate APS for DSLBridge Service

DSL Bridge Service is required whenever a document based on UNX or BEx query is refreshed. Purpose of this service:

SQL Generation through the new UNX for relational sources

Retrieve List of Values (LOV) with UNX/BICS

BICS Connectivity, fetching data from BW

By default, this service is put together inside a common Adaptive Processing Server. This default server is a java based server containing many other services. Its default settings, in particular its java heap size, are usually not well adapted for optimized performance. Therefore, we recommend doing the following actions:

6.1.1 Isolating DSLBRIDGE:

BICS client natively has to handle a large amount of data in through the DSLBRIDGE process. For an extensive usage, it is recommended to have it isolated from the default Adaptive Processing Server:

1. Open CMC, 2. Stop APS, 3. Remove the DSLBridge Service from APS, 4. Create a new Server with DSLBridge service:

a. Service Category: Connectivity Services b. Service: Adaptive Connectivity Service c. Selected Service: DSL Bridge Service.

5. Name it (for instance “Adaptive Processing Server DSLBRIDGE_1”).

The DSL Bridge APS will contain the following services:

DSL Bridge Service

Web Intelligence Monitoring Service

Security Token Service

Trace log Service

The next step is to set the new DSLBRIDGE with proper parameters to avoid memory starvation (JVM out of memory or excessive GC activity).

6.1.2 Memory options for DSLBRIDGE:

The minimum recommended heap size is 4GB (-Xmx4g –Xms1g). When using complex queries (with many metadata objects) and/or high volume of row set (number of cells requested), it is wise to extend the heap size beyond 4GB.

In practice, proceed as below to modify the DSLBRIDGE options:

1. Log into CMC 2. Edit the properties of the DSLBRIDGE server 3. Add the following to the command line field:

-Xmx4g

The value of heap size (-Xmx4g) should be adapted to your need: between -Xmx4g.and –Xmx8g

4. By default, the heapsize (-Xmx and -Xms) are already set in the APS command line field. For convenience, you can copy/paste the whole command line in notepad and make the modification. (cfr. example below). Each APS has its own unique command line. Don‟t reuse identical command lines for multiple different APS‟s.

Page 16: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 16

6.2 Separate APS for Search Service

After creating a dedicated APS for Search, go to the Application area of the CMC; choose the “Platform Search Application”:

1. Level of indexing change defaults from Full Content to “Platform Metadata” or “Platform and Document MetaData”

2. If possible, change the crawling frequency from continuous to scheduled crawling. 3. De-select Content type “Universes”

(cf.: https://service.sap.com/sap/support/notes/1704698) 4. Set action for Error Recovery to “Rebuild Index” 5. If necessary, set some documents excluded from indexing…

The APS for SEARCH will contain the following services:

Platform Search Service

Trace log Service

Page 17: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 17

6.3 Separate APS for Analysis

When using the client tool “Analysis for OLAP” intensively, add a dedicated APS for MDAS (Multi Dimensional Analysis Service)

If this MDAS APS is intensively used, change Xmx1g to something between -Xmx4g or -Xmx8g. This setting should be optimal for 50 Concurrent Active Users

The APS for ANALYSIS will contain the following services:

Multi Dimensional Analysis Service;

BEx Web Application Service;

Trace log Service"

6.4 Separate APS for Life Cycle Manager (LCM)

If LCM is intensively used in a multi platform environment (DEV, TEST, PROD) is recommended to create an “Adaptive LCM Processing Server” and isolate the following services:

LifeCycle Management Service

LifeCycle Management Clearcase Service

Visual Difference Service

Trace log Service

This LCM-APS is responsible for handling the overrides functionality in LCM. It creates the overrides database during initial startup and sets the DB_Created flag to true in its metadata in CMS System Database.

It is possible that sometimes, the LCM overrides database [apache derby] gets corrupted due to issues with using mixed patch levels or connection caching issues or even multiple APS pointing to the same overrides database. In such cases, even if it is not intended to override a connection – LCM may think that the object (Crystal or WebI) connections need to be overridden and result in modified or missing connections which are wrongfully overridden in target system.

In these scenarios, it is required to reset (clean) the LCM overrides database to clear corruption.

As there is no automated method to do this, it may be necessary to reset the overrides database using the script documented in below post:

https://cw.sdn.sap.com/cw/message/63749#63749

Due to an issue with the overrides database – it is not possible to run multiple LCM-APS servers pointing to the same overrides database at the same time.

This is to prevent a Java Null Pointer Exception when using the LCM overrides functionality.

For LCM, minimum use at least BI4.0 SP02 patch 10 or above

Page 18: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 18

6.5 Configure the APS to handle concurrent publications.

Recommendations: The following recommendations can improve the performance of the Adaptive Processing Server dealing with Publications:

If several publications are running concurrently, create multiple instances of the Adaptive Processing Server. In general, it is recommended that you have one Adaptive Processing Server instance for every three concurrent publications.

Increase the heap size for the Adaptive Processing Server. To do this, click Manage > Properties, and add the following to the command-line parameter: -Xmx1024M.

Run the Publishing Service and Publishing Post-Processing Service on different instances of the Adaptive Processing Server.

Adaptive Processing Servers for Publications will contain the following services:

Publishing Post Processing Service;

Publishing Service;

Trace log Service Resolving “Out of memory” errors If the publisher receives the error message “java.lang.OutOfMemoryError: unable to create new native thread when a high-volume publication is run”, it is because the Adaptive Processing Server and Publishing Service have insufficient stack memory to handle the number of Publishing threads that are generated. This error can occur if stack memory is designated as Java heap space. You can set a thread limit for the Adaptive Processing Server. In the "Servers" area of the CMC, select the Adaptive Processing Server and go to Manage > Properties. In the Command Line Parameters field, enter the following command line parameter:

-Dcom.businessobjects.publisher.threadpool.size=threadlimitnumber Replace threadlimitnumber with the thread limit number that you want.

If the publisher receives the error message “java.lang.OutOfMemoryError”: Java heap space when you run a high-volume publication, it is because the APS has insufficient heap space. In the "Servers" area of the CMC, select the Adaptive Processing Server and go to Manage > Properties. In the Command Line Parameters field, change the number in the command-line parameter - Xmx1024m to a larger number (for example, -Xmx2048m). Note: In some cases, you may have to create more instances of the Adaptive Processing Server to resolve “Out of memory” errors.

6.6 Separate APS for Heavy Visualisations (Charting)

The same out of memory errors can occur when using chart-heavy reports Recommendations: The following recommendations can improve the stability of chart-heavy reports (Webintelligence or Crystal for Enterprise):

Create a new instance of the Adaptive Processing Server.

Increase the heap size for the Adaptive Processing Server. To do this, click Manage > Properties, and modify the following to the command-line parameter: -Xmx2g.

Increase the number of visualization APS if needed.

Adaptive Processing Servers for Heavy Charting will contain the following services:

Visualization Service

Trace log Service

Page 19: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 19

6.7 Other APS to consider

Dedicated APS for Client Auditing. Useful to ensure Client tools / CMC / BI Launchpad perform properly, while executing Client Auditing (See Auditing section of Administrators Guide: xi4sp4_bip_admin_en.pdf)

Dedicated APS for DataFederation Service and Adaptive Connectivity Service. This will also decouple service categories. This way stopping WebI services will not cause other (CR, etc.) services to stop working because connection service is not available.

6.8 Separate APS for unnecessary Services

Add a dedicated APS for ALL NOT NEEDED Services

STOP this APS

Example: When not using BEx Web Application, not Publications, nor MDAS, then gather all these services in one single APS and stop this APS. This is to avoid unnecessary memory and CPU consumption.

6.9 Keep the original APS

Leave the original APS as it is. Do not remove any services. Stop and disable this APS. Set the start-up parameter to “Manual”. To do this, click Manage > Properties in the CMC and uncheck the checkbox: “Automatically start this server when the SIA starts”. Re-use the original APS by cloning.

6.10 General APS recommendations

It is better to clone an existing APS instead of creating a brand new one. Cloning keeps the default settings. While after creating a new APS, default settings have to be manually entered.

When increasing the heap size, you have to make sure there is enough physical memory on the machine. Otherwise the jvm process could crash or/and memory goes on disk swapping. That would result to application errors and bad performance.

Default parameter: -XX:+ExitVMOnOutOfMemoryError will force an automatic restart of the APS when an Out Of Memory error occurs

-XX:+UseParallelOldGC use the parallel old generation garbage collector. Certain phases of an old generation collection can be performed in parallel, speeding up an old generation collection.

Warning:

In other documents / websites / notes, the parameters below might be considered. The use of these options is absolutely NOT recommended by SAP. Avoid the use of these options, as they will cause failure of the APS server (crash): -XX:+UseParNewGC - XX:+UseConcMarkSweepGC - XX:+UseAdaptiveSizePolicy

There is no generally applicable "Best Practise” for these parameters.

Page 20: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 20

6.11 Command Line Parameters

When deploying a new APS on a node (either by copying an existing APS using the server clone command or by creating a new one) you must inspect the APS Command Line Parameters: -Djava.awt.headless=true "-Dcom.businessobjects.datafederator.server.home=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/java/pjs/services/DataFederatorService/resources" "-Dbusinessobjects.logs.home=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/logging/" "-XtraceFile=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/logging/[email protected]" -XX:MaxPermSize=256m "-Dbobj.javaserver.home=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/java/pjs/container/" "-Dbobj.enterprise.home=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/" -XX:LogGcMaxFileCount=3 -XX:+PrintGCTimeStamps "-Dbusinessobjects.connectivity.directory=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0//dataAccess/connectionServer" -XsapSystem:08 "-XX:ErrorFile=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/logging/AdaptiveProcessingServer_DSL_TOKEN/aps_NTBIT20.AdaptiveProcessingServer_dump_%p.log" -XX:+HeapDumpOnOutOfMemoryError "-XX:HeapDumpPath=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/logging/" -XX:+ExitVMOnOutOfMemoryError "-Djava.io.tmpdir=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/java/pjs/container/temp" "-XX:GCHistoryFilename=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/logging/AdaptiveProcessingServer_DSL_TOKEN/aps_NTBIT20.AdaptiveProcessingServer_gc.prf" "-Dboe.external.dir=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/java/lib//external" –Xms32m -XX:+PrintGCDetails -XX:+UseParallelOldGC "-Dboe.bundles.dir=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/java/lib//bundles" -XX:LogGcMaxFileSize=5m -Xjvmx -Xss1M -Djava.net.preferIPv4Stack=false –Xmx8g "-Dbo_cluster.config_dir=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/win64_x64/config" "-Xloggc:E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/logging/AdaptiveProcessingServer_DSL_TOKEN/aps_NTBIT20.AdaptiveProcessingServer_gc.log" -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl -server "-Dboe.common.dir=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/java/lib/" "-Djava.library.path=E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0//win64_x64" -jar "E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/java/pjs/container/bin/boeserver.jar" -workdir "E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0/java/pjs/container/work/NTBIT20.AdaptiveProcessingServer"

1. Make sure that some of the paths are unique (not the same as on another APS on the same server node).

Parameters to check on all APS instances:

-XtraceFile=”"

-XX:ErrorFile=”"

-XX:GCHistoryFilename=”"

-Xloggc:

-workdir

For all these parameters, make sure the paths are different. The paths will be different by default from BI4.0 SP02 patch 2.12 forward.

2. The parameter “-Dbusinessobjects.connectivity.directory'” on the Adaptive Processing Server hosting the DSL Bridge service can be missing. Generally this can happen after applying a patch. (see SAP Note 1735431) This will cause the error message:"The datasource cannot be generated for the specified datasource name"xxx". (WIS 00000) when selecting a universe (UNX) in Webi Resolution:

Create a new temporary Adaptive Processing Server (APS) hosting the DSL Bridge Service from CMC.

Copy the parameter "-Dbusinessobjects.connectivity.directory" from this temporary APS add it to the original APS command line. e.g.:"-Dbusinessobjects.connectivity.directory= E:/Program Files (x86)/SAP BusinessObjects/SAP BusinessObjects Enterprise XI 4.0//dataAccess/connectionServer"

Restart the APS hosting the DSL Bridge Service

Remove the temporary APS

Page 21: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 21

6.12 Overview of available JVM –X parameters

-Xmixed mixed mode execution (default)

-Xint interpreted mode execution only

-Xbootclasspath:

<directories and zip/jar files separated by ;>

set search path for bootstrap classes and resources

-Xbootclasspath/a:

<directories and zip/jar files separated by ;>

append to end of bootstrap class path

-Xbootclasspath/p:

<directories and zip/jar files separated by ;>

prepend in front of bootstrap class path

-Xnoclassgc disable class garbage collection

-Xincgc enable incremental garbage collection

-Xloggc: <file>

log GC status to a file with time stamps

-Xbatch disable background compilation

-Xms<size> set initial Java heap size, usually keep the default setting in APS

-Xmx<size> set maximum Java heap size

-Xss<size> set java thread stack size

-Xprof output cpu profiling data

-Xfuture enable strictest checks, anticipating future default

-Xrs reduce use of OS signals by Java/VM

-Xcheck:jni perform additional checks for JNI functions

-Xshare:off do not attempt to use shared class data

-Xshare:auto use shared class data if possible (default)

-Xshare:on require using shared class data, otherwise fail.

The -X options above are non-standard and subject to change without notice.

Page 22: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 22

7 Configuring, monitoring and tracing APS

7.1 Analyzing APS memory consumption by Heap Dump generation

In order to find the biggest memory consumer in your APS process, you will need to have a heap dump.

A heap dump is a file that contains a snapshot of the memory allocated by the Java Virtual Machine.

The steps below are usually executed by or with the assistance of Engineers from SAP Support.

7.1.1 Heap Dump generation:

If the process is reaching OOM (OutOfMemory) , it will generate a heap dump file automatically in “C:\Program Files (x86)\BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\logging" With the name java_pid[pid].hprof, e.g: java_pid3736.hprof

If the process is not reaching OOM, then you can generate manually a heap dump file :

Choose in CMC->Servers and find the PID of the culprit server, e.g.: PID 10936

Start a command line tool:

cd “C:\Program Files (x86)\BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\win64_x64\sapjvm\bin”

jmap -dump:file=c:\dumpdemo.hprof 10936

7.1.2 Using MAT to Analyze SAP ME Heap Dumps:

Once the heap dump file is generated (hprof extension), it can be analyzed by using the Memory Analysis Tool:

http://www.eclipse.org/mat/

https://wiki.wdf.sap.corp/wiki/display/METG/METG+-+Using+MAT+to+Analyze+SAP+ME+Heap+Dumps

https://wiki.wdf.sap.corp/wiki/display/BOBJCAS12Y/WebIntelligence+troubleshooting#WebIntelligencetroubleshooting-HeapDumpgenerationonaspecificWebIntelligenceBICSworkflow

7.2 Stop unnecessary servers

Example: when using Interactive Analysis over SAP BICS connection, you essentially need very few BOE processing servers:

Central Management Server (CMS)

InputFileRepository

OutFileRepository

WebIntelligence Processing Server

Adaptive Processing Server with Visualization Service (for charts rendering in WebI reports).

Adaptive Processing Server with DSLBridge Service.

Adaptive Processing Server with Data Federation Service (DF) if Multi-Source Universes are used.

By default, BOE starts up automatically all servers. In case you don‟t need all of them, you may switch them off to save memory and CPU resources.

For instance, if you don‟t need Crystal Reports, you can shut down CrystalReport* servers. This is useful in a test environment when you have little system resources to be shared.

Page 23: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 23

7.3 Multi-instances deployment

It is possible to set up several WebI Processing Servers and DSLBRIDGE‟s. There is no constraint on their numbers.

Depending on whether the workload is composed of reporting operations, it is recommended to add more or less instances of WebI Processing Server and DSLBRIDGE.

If pure reporting actions are dominant (navigation, chart, edition, etc.), create more WebI Processing Servers.

Eg: 2 WebI for 1 DSLBRIDGE.

If the workflow is largely composed of data refreshing (run query, LOV refresh), create more DSLBRIDGE.

Eg: 1 WebI for 2 DSLBRIDGE.

In general, when many users are using WebI documents on BEx, it is safer to make many DSLBRIDGE and few WebI. Having multiple DSLBRIDGE‟s allows better distributing load with heavy queries – the response times will be more consistent with less GCs.

Moreover, when the administrator observes the existing DSL being permanently occupying CPU time during concurrent Webi report processing, or when the memory pool consumption for that process is repeatedly approaching the -Xmx limit or if failover tolerance is desired on a single (unclustered) host, adding an additional DSL bridge APS is recommended.

7.4 Configuring BICS Result Chunk Sizes (BICS)

When DSL Bridge Service fetches data from BW via BICS, it proceeds by iteration of chunks. One can modify the chunk size so that the fetching could work more efficiently.

ChunkSize is like the „array fetch‟ universe parameter used with SQL relational universes.

This will send smaller „quick‟ packets, or larger „long‟ packets.

The DSL Bridge Service can utilize an optimized BICS client interface which reduces the memory footprint of the DSL Bridge Service. This interface has several parameters which can be tuned.

Those parameters are:

BICSResultChunkSize = X where X = <# of rows of the biggest rowset> / 50

BICSLOVChunkSIZE =Y where Y = <# of items of the biggest LOV> / 20

To configure those parameters:

Windows This is the number of row per chunk the DSL Bridge Service fetches for the result set. Having a high value, for instance 30000, will improve the response time when you refresh a report with a large result set.

The default value for this parameter is 50000.

This parameter in the registry:

[HKEY_LOCAL_MACHINE\SOFTWARE\SAP BusinessObjects\Suite XI 4.0\default\WebIntelligence\Calculator]

and create the following as DWORD (decimal) values:

"BICSResultChunkSize"="X" (where X is determined by the above formula)

“BICSLOVChunkSIZE”=”Y” (where Y is determined by the above formula)

Page 24: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 24

UNIX You will need to edit the .registry file for BI 4.0 which is located in the

following path (the OS in this example is RedHat):

INSTALL_BASE_DIR/sap_bobj/data/.bobj/registry/64/software/sapbusinessobjects/suite xi 4.0/default/webintelligence/calculator

Add the two keys to the .registry file with the values as determined by the formulas above:

BICSResultChunkSize= X (where X is determined by the above formula)

BICSLOVChunkSIZE=Y (where Y is determined by the above formula)

Caution: Setting a high value for those parameters might cause out of memory issue. That is especially true when you work in WebI Rich Client (32 bit runtime).

7.5 Adapting the parameters for LOV chunk size

The term of LOV (List of Values) concerns:

- The values shown in a prompt panel (BEx Variables – Characteristics Values), - The values shown in a Member Selector (Hierarchy nodes and leafs).

To improve performance with large LOV, three parameters can be modified on in different levels.

7.5.1 For Interactive Analysis Desktop (i.e. WebI Rich Client):

The parameter WebIParamMaxLOVSize is stored in the file \SAP BusinessObjects Enterprise XI 4.0\platform\config\ WebIContainer_ClientDescriptor.xml:

This parameter allows WebI Rich Client to limit the number of LOV rows that are retrieved from DSL.

7.5.2 For BOE WebIReportServer:

At the BOE server side, the equivalent parameter is “Maximum List of Values Size”, property of Web Intelligence Processing Server in CMC:

Page 25: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 25

7.5.3 For DSL-BICS layer:

At the BOE server, DSLBRIDGE side, the parameter BICSLOVChunkSize can be changed. It determines the size of packets sent from Java stack to C++ stack in DSL component. This size is the maximum number of members to send in one trip.

This parameter in the registry:

[HKEY_LOCAL_MACHINE\SOFTWARE\SAP BusinessObjects\Suite XI 4.0\default\WebIntelligence\ Calculator]

"BICSLOVChunkSize"="60000"

Below a picture is shown, describing the architecture.

Page 26: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 26

Adaptive Processing Server

WebIntelligence IAD

Cube

DSL Java

DSL C++

NetWeaver BW

WebIntelligence Processing Server

Cube

DSL Java

(DSLBridge service)

DSL C++

NetWeaver BW

BICS + JCo BICS + JCo

IAD InfoView

*IAD = Interactive Analysis Desktop (= new name for Webi Rich Client)

It is wise to set those three parameters to small values (<1000) in the following situations: - User is not inclined to browse long list with large LOV. He prefers rather using the search feature (see

above section). - Save memory – retrieving large list will cause large memory footprint in WebI Rich Client. It is typically

true when you run a very large report and WebI Rich Client cannot afford a heapsize over 2GB due to its 32 bits implementation.

Reversely, we can increase those three parameters to high values (>50000) in the following situations. That will help DSL and WebI to limit the number of chunk iteration.

- For some reason, user needs to load entirely large LOV. - No limit on memory resource (DSLBRIDGE is configured with large heap size).

Page 27: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 27

7.6 How to monitor DSLBRIDGE memory usage

A simple way to check if the DSLBRIDGE suffers from memory starvation is to visualize its GC log file. It is enabled by default in “C:\Program Files (x86)\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\logging\”.

The filename is post fixed by _gc.log. (For example: aps_dewdftf1134as.PJS_1_gc.log).

For convenience, you can use gcviewer to view this log file: http://www.javaperformancetuning.com/tools/gcviewer/index.shtml

To install GCViewer simply download the latest version from tagtraum.com: http://www.tagtraum.com/gcviewer-download.html

To detect heap memory contention, you can observe the frequency of the full GCs.

Another way is to observe, in the GCViewer statistics view, the throughput. It is the Time percentage the application was NOT busy with GC. A low throughput means your JVM spends hard time in recycling data.

If memory contention is detected, you can enlarge the heap size (-Xmx) of your APS containing the DSLBRIDGE Service - see section above, “DSLBridge Service (PJS)”.

Full GCs

Page 28: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 28

7.7 Getting Traces for investigation

Traces are a best help for SAP Support to investigate efficiently on application issue. The procedure is below:

1. Log into CMC. 2. Go BOE server. 3. Open the properties window of APS. 4. In TraceLog section, set the log level to High:

1. Reproduce the issue. 2. Collect the log files in the folder <BOE install>\ SAP BusinessObjects Enterprise XI 4.0\logging\. 3. On Unix machine, you can look for additional RFC trace files and core file:

o Go to <BOE Dir>/sap_bobj/enterprise_xi40/<System>/. o List the last created files: ls -lrt

You will see core file whenever a process has crashed. Possible log files are created (*.trc, *.log).

Page 29: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 29

8 BOE platform settings

8.1 CMS settings

Increasing instances of CMS helps improve responsiveness of BIP actions (login, logout, folder navigation). This is particular true for “small” queries scenario (documents very fast to refresh).

CMS database must be well tuned. With high number of concurrent users, CMS database could be intensively loaded both in read (select) and in update statements (insert, update, delete).

The usual best practices are:

- Updates database statistics.

- Maximize cache effect to minimize IO (buffer hit ratio = 99%).

- Speedy disk access (SCSI, raid system …).

8.2 Web application server (Tomcat)

The following parameters are to be verified for the Web application Server (Tomcat):

- Maximum of possible threads (maxthread parameter in Tomcat). For Tomcat, it can be set to 900.

- JVM heapsize. For 128 users, a heapsize of 4GB is enough. Recommended options: -Xmx4g.

8.3 Avoid background activities

In case your machine has little resources in CPU or memory, you may want to avoid disturbance by background activities which are turned on by default.

You can stop Platform Search indexing service (see section on Search): o Open CMC o Go to Applications o Select Platform Search Application o Edit Properties o Stop Indexing o Modify the Crawling frequency: choose “Scheduled crawling” instead of “Continuous crawling”.

You can also stop BOE platform monitoring. o Open CMC o Go to Applications o Uncheck “Enable Monitoring Application”.

Page 30: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 30

9 Deployment Examples

Before deploying multiple APS‟s, it is important to analyze first how the BI platform will be used: which tools, what connectivity, Multi Source universes, publications, Auditing, LCM etc.

It is obvious that the more RAM your platform has available, the more flexibility there is in creating dedicated APS‟s and corresponding Xmx parameters. BI4.0 Hosts should not have less than 32 GByte of RAM for each Node in the Cluster.

All of the available RAM should not be consumed by the various APS only. Leave sufficient RAM for other BI4 processes!

As many users have different needs and requirements with their deployments of BusinessObjects BI 4.0, some products may not be used and some services may not be needed.

The first step: identify the products that you will be using.

The second step: by looking at the following tables determine:

which APS servers you will need to create

and the max heap size (value for –Xmx) for each APS

The third step: create the necessary APS‟s.

The fourth step: perform system sizing and tuning.

Note that you do not always have to run all APSs on the same machine, but you may choose to run several APSs on one machine, while other on other machines.

Page 31: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 31

9.1 Deployment example 1

This is an example of a deployment with the full set of possible APS‟s. Minimum 64GByte RAM required. Choose from the table the APS‟s you might need. The other services can be grouped in for example “AdaptiveProcessingServerOTHER”, as in Deployment example 2.

APS Xmx Included Services

AdaptiveProcessingServerDSLBridge Xmx8g "DSL Bridge Service;

This APS is imperative in all deployments Web Intelligence Monitoring Service;

Security Token Service;

Trace log Service"

AdaptiveProcessingServerPUBLISHING Xmx4g Publishing Post Processing Service;

Publishing Service;

Trace log Service"

AdaptiveProcessingServerWEBI Xmx4g "Rebean Service;

Web Intelligence Monitoring Service;

Document Recovery Service;

Custom Data Access Service;

Excel Data Access Service;

Trace log Service"

AdaptiveProcessingServerCHARTS Xmx2g "Visualization Service;

Trace log Service

AdaptiveProcessingServerANALYSIS Xmx8g "Multi Dimensional Analysis Service;

BEx Web Application Service;

Trace log Service"

AdaptiveProcessingServerDF Xmx3g “Data Federation Service;

Trace log Service"

AdaptiveProcessingServerMONITORING Xmx1g “Monitoring Service;

Trace log Service"

AdaptiveProcessingServerCAPS Xmx512m “Client Auditing Proxy Service;

Trace log Service"

AdaptiveProcessingServerCONNECTIVITY Xmx1g "Adaptive Connectivity Service;

Trace log Service"

AdaptiveProcessingServerOTHER Xmx1g Security Token Service;

Translation Service;

Insight to Action Service;

Trace log Service"

AdaptiveProcessingServerSEARCH Xmx3g "Platform Search Service

This APS is imperative in all deployments Trace log Service"

AdaptiveProcessingServerLCM Xmx2g "Lifecycle Management Service;

Lifecycle Management ClearCase

Service; Visual Difference Service;

Trace log Service"

Page 32: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 32

9.2 Deployment example 2

This is an example of a deployment for Web Intelligence documents with BICS connectivity and Analysis Edition for OLAP. Use of UNX Universe is very limited. Focus is on Publications not on Auditing. Minimum 64GByte RAM required.

APS Xmx Included Services

AdaptiveProcessingServerDSLBridge Xmx8g "DSL Bridge Service;

This APS is imperative in all deployments Web Intelligence Monitoring Service;

Security Token Service;

Trace log Service"

AdaptiveProcessingServerPUBLISHING Xmx4g Publishing Post Processing Service;

Publishing Service;

Trace log Service"

AdaptiveProcessingServerWEBI Xmx4g "Visualization Service;

Rebean Service;

Web Intelligence Monitoring Service;

Document Recovery Service;

Trace log Service"

AdaptiveProcessingServerANALYSIS Xmx8g "Multi Dimensional Analysis Service;

BEx Web Application Service;

Trace log Service"

AdaptiveProcessingServerOTHER Xmx4g "Adaptive Connectivity Service;

Custom Data Access Service;

Excel Data Access Service;

Client Auditing Proxy Service;

Monitoring Service;

Security Token Service;

Translation Service;

Insight to Action Service;

Data Federation Service;

Trace log Service"

AdaptiveProcessingServerSEARCH Xmx3g "Platform Search Service

This APS is imperative in all deployments Trace log Service"

AdaptiveProcessingServerLCM Xmx2g "Lifecycle Management Service;

Lifecycle Management ClearCase Service;

Visual Difference Service;

Trace log Service"

Page 33: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 33

10 Additional Information

SAP Note 1640036 – Added memory usage when splitting Adaptive Procesing Server (APS) services

SAP Note 1717717 – How to troubleshoot high CPU consumption issues on BI 4.0

SAP Note 1621001 – Adaptive Processing Server not getting started BI4.0

SAP Note 1630185 – Adaptive Procesing Server crashes repeatedly while indexing a system to enable search functionality in BI Launchpad

SAP Note 1694041 - BI 4.0 Consulting:- How to size the Adaptive Processing Server

SAP Note 1642935 - LCM Override settings are not working in BI4.0

SAP Note 1735431 - Error: “The datasource cannot be generated for the specified datasource name"xxx".(WIS 00000).” when creating Webi report based on a .unx universe from BILaunchpad

How to access the Quick Sizer for SAP BusinessObjects BI 4.0 Go to: http://service.sap.com/quicksizer in Internet Explorer and click "Start Quick Sizer". Make sure pop-ups for the site are enabled. The tool will open in a separate browser tab or window.

Page 34: Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

Best Practices for SAPBO BI 4.0 Adaptive Processing Servers

SAP COMMUNITY NETWORK SDN - sdn.sap.com | BPX - bpx.sap.com | BOC - boc.sap.com | UAC - uac.sap.com

© 2012 SAP AG 34

Copyright

© Copyright 2012 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, Excel, Outlook, and PowerPoint are registered trademarks of Microsoft Corporation.

IBM, DB2, DB2 Universal Database, System i, System i5, System p, System p5, System x, System z, System z10, System z9, z10, z9, iSeries, pSeries, xSeries, zSeries, eServer, z/VM, z/OS, i5/OS, S/390, OS/390, OS/400, AS/400, S/390 Parallel Enterprise Server, PowerVM, Power Architecture, POWER6+, POWER6, POWER5+, POWER5, POWER, OpenPower, PowerPC, BatchPipes, BladeCenter, System Storage, GPFS, HACMP, RETAIN, DB2 Connect, RACF, Redbooks, OS/2, Parallel Sysplex, MVS/ESA, AIX, Intelligent Miner, WebSphere, Netfinity, Tivoli and Informix are trademarks or registered trademarks of IBM Corporation.

Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.

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.

SAP, R/3, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP Business ByDesign, 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 other countries.

Business Objects and the Business Objects logo, BusinessObjects, Crystal Reports, Crystal Decisions, Web Intelligence, Xcelsius, and other Business Objects products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of Business Objects S.A. in the United States and in other countries. Business Objects is an SAP company.

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.