Skip to end of metadata
Go to start of metadata

HowTo - SAP MaxDB Performance

This section should help you to start a performance analysis of a SAP MaxDB OLTP-System. Here you will find all checks/information which have to be executed/collected to optimize the SAP MaxDB database.
Especially after a heterogeneous system copy of an SAP MaxDB OLTP-System with R3load these steps have to be checked.  Performance problems based on incorrect administration/configuration will be found after you executed all the steps below. See also information in Tuning SAP MaxDB, Performance Analysis Tools and SAP note 819641 and 1173395.

The following list should be checked step by step.

Performance Analysis

  1. General Performance Problems in a SAP System
  2. Poor Performance in the MaxDB Database System
  3. Poor Performance when executing Individual SQL Statements

Volume Configuration

The volume configuration of a SAP MaxDB database can have impact to the database response time.
Please check the volume configuration (data and log) and compare customer's configuration with SAP MaxDB recommendation Volume Configuration.

Of course if customer's configuration is different from SAP's recommendation it is not urgently neccessary and possible to change volume configuration in short term. But it should be discussed with the customer.
Correct volume configuration is important if database analyzer loggs bottlenecks during volume accesses (check I/O time for read and write).

See also: SAP MaxDB Directory Structure, Volumes (Permanent Storage)

back to top

Memory Sizing

The sizing of the memory areas of the database is influenced of several factors. Use SAP MaxDB Memory Sizing to compare customer's memory configuration with the SAP MaxDB recommendations.

Notice customer's current memory configuration:

  • available address space (32 bit or 64 bit)
  • RAM
  • Estimate the memory requirements of all components running on the database server
  • database parameter CacheMemorySize (CACHE_SIZE)

If customer's configuration (CacheMemorySize) is smaller than SAPs recommendation and the machine resources allow changes you should discuss possible changes with the customer. The recommendation should be followed as soon as possible.

See also: Working Memory, SAP note 1128916 (Heap Management)

back to top

Recommended SAP MaxDB Version

There is no general recommendation which SAP MaxDB version should be used. It depends on the available database version which is approved for customer's version of product suit he is currently using.

  • To check which database version the customer uses use XCONS: x_cons <database_name> show version or check version in DBA Cockpit (transaction DBACOCKPIT) or database assistant (transaction DB50).

Upgrade of a major database version can not be executed in short term. Therefore you should only recommend this upgrade if the used database version is out of maintenance. For OLTP systems use the following note to check: 1178367. Of course you should recommend to use the current patch level of the used database version.

For SAP MaxDB BW systems you will find all information using the following link: SAP MaxDB BW Feature Pack

Important to Know

Take care: SAP MaxDB prefetch mechanims is not availble in database version 7.7 < SP 07.
If a customer uses database version 7.6 and activated SAP MaxDB prefetch mechanism (READAHEAD_TABLE_THRESHOLD>0) he will loose this functionality when he upgrades the database to a database version 7.7 < SP 07.

See also: Version, SAP note 972785 (Change to SAP MaxDB version numbering)

back to top

Check Correctness of Database Parameters

Check the database parameter settings on customer system using the relevant notes: see SAP MaxDB Database Parameter Recommendations, Database Parameter Configuration

You should ask the customer for implementing note 1111426 (Database parameter check for SAP MaxDB/liveCache). After this note - including the current database analyzer config file - has been implemented the database analyzer checks the correct database parameter settings and list the recommendation in the database analyzer log file.

Compare this output with the database parameter recommendations of the notes and discuss possible changes with the customer.

Do not do any database paramter changes on your own!
See also: Database Parameter, SAP note 1139904 (FAQ)

back to top

Update Statistics

SAP MaxDB Version < Assure that note 808060 "Changing the estimated values for Update Statistics" has been installed in the database system.
SAP MaxDB Version >= Assure that note 1466524 "MaxDB Sample Sizes for Update Statistics" has been installed in the database system.

  • Check database parameter value UPDATESTAT_SAMPLE_ALGO = 1
  • SAP MaxDB Version < only: Run the Report ZZ_SET_SAMPLE_SIZES with 5% and mark Verbose to check if all SAMPLE sizes are set correctly. If not ask the customer for running the report with 'adjust' when there is low activity on the system.
  • Check when the last UPD_COND or UPD_UNCOND has been executed in DBA planning calendar (transaction DB13).
    Notice: UPD_UNCOND is strongly recommended after following actions (when there is low activity on the system):
    • a system copy via R3load
    • a system copy via LOADERCLI
    • a major release upgrade 
  • Check database analyzer log file if the database analyzer recommends an Update Statistics.

See also: Statistics, SAP note 927882 (FAQ)

back to top

Time Measurement

The time measurement has to be explicitly activated in all database versions < 7.7 when you start a general performance analysis. As of SAP MaxDB version 7.7 the time measurement is implicitly activated.

Ask the customer for switch on the time measurement. There are different possibilities to switch on the time measurement:

  • use DBA Cockpit (transaction DBACOCKPIT) or database assistant (transaction DB50): Kernel Threads -> Task Manager -> activate time measurement
  • use database console program XCONS and execute the following command: x_cons <database_name> time enable


If the time measurement is deactivated during the performance analysis you don't get any information about I/O times etc. in database analyser expert analysis.

After you finished your performance analysis the time measurement in SAP MaxDB versions < 7.7 has to be switched off again.

There are different possibilities to switch off the time measurement:

  • use DBA Cockpit (transaction DBACOCKPIT) or database assistant (transaction DB50): Kernel Threads -> Task Manager -> deactivate time measurement
  • use database console program XCONS and execute the following command: x_cons <database:name> time disable

See also: Task Manager

back to top

Database Analyzer

The Database Analyzer is used to analyze performance bottlenecks in the database, when e.g. you don't know special transactions which have bad response time. By default the database analyzer creates every 15 minutes a snapshot. During the database analysis you should change this default to 60 or 120 seconds.

See also:  Database Analyzer, Database Analyzer (Overview), SAP note 1423935 (FAQ) 

back to top

Command and Resource Monitor

The Command Monitor enables you to target long-running SQL statements.

You are using the command monitor in the following situations:

  • you have some special transactions with bad response time
  • the database analyzer tells you that you have high number of rows read and bad data cache hit rate
  • the database analyzer tells you a lot of scans (table or index).

For SQL statements which are logged in the command monitor you can execute the EXPLAIN and decide if an additional index will solve the performance issue.

This tool is intended for short analyses, since it records a limited number of SQL statements. Do not activate the command monitor for several days or weeks when there is nobody available who analysis the output of the command monitor.
See also: Command Monitor, Command Monitor (Overview), SAP note 1603165 (FAQ)

By analyzing the resource consumption, you can identify the most costly SQL statements with the Resource Monitor. The resources used by an SQL statement are measured (runtime and I/O accesses, for example).
You should always use the resource monitor in combination with the command monitor.
See also: Resource Monitor,  Resource Monitor (Overview)

back to top

SQL-Trace Transaction ST05

When the customer is able to reproduce the performance problem of a special transaction the SQL-Trace transaction ST05 can be used to create an SQL trace for a special user. You are able to do a SQL analysis with the output.

See also: Traces of the SAP System

back to top

Expert-Analysis with Database Console (XCONS)

The SAP MaxDB console program XCONS can be used to monitor current operations on the database.
The database console program is an expert tool which is e.g. used when you need to have snapshots in intervals < 60 seconds.

See also: XCONS, SAP note 936058 (FAQ Runtime)

back to top