SAP BOBJ Performance Best Practice


Just because it's analytical and not transactional doesn't mean it's not a core part of service delivery.

As a leading Business Intelligence and analytic platform SAP BusinessObjects (BOBJ or BO) needs to deliver business performance metrics to business users to help them make informed decisions that directly impact revenue.  So if BO is slow or unavailable, then "ITOBjects" (pun intended) failed at delivering that service to the business.  It is core and it is mission-critical, therefore it must perform.

See our updated content BusinessObjects Monitoring is Tricky but These Resources Should Help

One of our customers recently deployed SAP BW on HANA with SAP BusinessObjects 4.1 as the reporting front end.  Both HANA and BO are new to them, so they were unsure how to best tackle the performance management of the environment.  We proceeded based on our SAP Performance Management Best Practices and a summary of our approach for BO is described in this publication, including the 3 major areas of performance assurance: Sizing/Design, Testing/Optimization, and Monitoring/Management.  We were able to quickly identify key components, test scenarios, and monitor and report key optimization recommendations.

1. Sizing & Design

BusinessObjects architecture has complex internal components therefore sizing and monitoring are both non-trivial exercises.

SAP BI 4 Architecture

Figure 1: SAP BusinessObjects BI Platform 4.1 Architecture

BI 4 Architecture (Source: SAP BusinessObjects BI4 Sizing Guide)

Refer to the SAP BusinessObjects BI4 Sizing Guide for a detailed procedure to scope out the environment based on items such as:

  • BI tool user count (Named, Active Concurrent Users)
  • Class of users: Low (Information consumers), Medium (Business users), High (Experts)
  • How users will use each BI tool as they affect the workload produced: Document refresh frequency, online or scheduled, number of concurrent documents processed, how dashboards are used to consume multiple reports
  • Datasources involved: SQL datasources, SAP BW, etc.
  • Infrastructure design: physical servers versus virtualized machine architecture

2. Testing & Optimization

See our recent SAP Performance Testing as a Service announcement.

Here is a set of example questions to ask of the project team to flush out testing requirements and objectives prior to developing a test plan:

  1. Are users coming in via intranet, extranet, internet, or all?
  2. What security authentication, single-sign-on, and network proxy are involved?
  3. What application components and versions will be utilized?
  4. What system components will be involved, e.g. BI on HANA backend, WEBI (Web Intelligence) reporting front end, BI Launch Pad, ECC integration, SAP Portal, etc.?
  5. Is the BI/BOBJ test environment available, and dedicated for testing as it may be disruptive to other normal users?
  6. What protocols will be used primarily, HTTP, HTTPS?
  7. Is the Performance test tool environment available and ready for software installation/configuration/update?
  8. Are the workflows and input data (both static and dynamic content)/navigation well-defined for the Reports including drill-downs and refreshes?
  9. Is customer analyst available and identified for each of the workflows to demonstrate sample reports and recording processes for modeling the test scenarios?
  10. Have the environment identified in 5) and the workflows identified in 7) passed quality assurance and frozen to configuration changes?
  11. Is the sizing and design of the application environment available for review? See the output of the Sizing & Design section above.
  12. Has performance requirements for the business scenarios been clearly defined, such as the number of users per workflow, think time between interactions, page response time targets, or comparisons to the existing environment?
  13. Has the Performance Test project timeline and high-level plan been developed and agreed upon by all parties, management, users, technical, functional, vendor, etc?

3). SAP BOBJ Monitoring & Management

Although BusinessObjects monitoring and optimization are an integral part of Testing and Optimization above, they deserve to be a separate heading because it is often a comprehensive subject.  The proper monitoring tools are critical to providing metrics and alerts for analysis of each test run, as well as the management setup for ongoing operations once the environment has been optimized and ready to be in productive operation.

One of the key issues is using the provided BI tool CMC (Central Management Console) for performance monitoring, during the test it became the bottleneck itself because access for monitoring was either slow or unresponsive under high load scenarios.  Therefore we don't recommend using CMC during testing, although alerts can be configured for thresholds during normal operation, it is not a central monitoring solution.  It is important to monitor the utilization of resources and response times across BI4 components especially processing server/service metrics (such as Central Management Server - CMS, Web Intelligence, Crystal Report, Dashboard, Jobs, etc.).  Other tools available include:

As of May 2016, BusinessObjects Management Pack 1.1.0 for Microsoft SCOM is available.  This release introduces Job Monitoring for BusinessObjects batch objects such as Webi and Crystal Reports:
  1. Exception-based monitoring - supports a large number of jobs and generates alerts for Failed Jobs and ones with Excessive Run-time and Pending time
  2. Subscription-based monitoring - facilitates targeted job performance monitoring with a historical perspective. The per-job monitors cover Job Status, Pending time, In-flight time, and Duration.
  3. Automation: Auto-restart for unexpectedly stopped BI Servers
Figure 2: BusinessObjects System Group

Managing Complexity Requires Planning, Process, Products, and People

BI is only the analytical processing front-end to many pieces of integrated technologies, whether a BW data source backend, or a SQL reporting data source, but its role and functions are critical because they are often used by high-end business and management groups.  Therefore it is important to design, build, deploy and run BusinessObjects as optimally as possible to maintain business values.