Show TOC

Background documentationMonitoring and Optimizing ASR Reporting Performance

 

Note Note

This section is part of the technical documentation of the ABAP statistics records reporting scenario (see Technical Information about ABAP Statistics Data Reporting).

End of the note.

Analyze and optimize the ABAP statistics data reporting performance if one or more of the following situations occur:

  • ABAP statistics data (ASR) reporting performance is poor, or times out.

  • The BW tables in which ASRs are saved are very large (you can check their size with the program SMBI_ASR_BW_ANALYZE, which is explained in Check ASR Aggregate Table Size and Structure).

  • There are performance problems when processing ASR data (writing and reorganizing), or extraction takes longer than an hour, so extractions run in parallel, because data is loaded hourly. This can again cause DB deadlocks and crashes.

    The extractor run time should be well under an hour (optimally less than 10 minutes). The run time is in the Application Log in the SAP Solution Manager system (transaction slg1); object ASR_EXTRACT.

  • ABAP runtime errors for extractors (see Getting ABAP Statistics Data for Reporting Applications) and data loaders (see Passing ABAP Statistics Data to the Business Warehouse).

Ensure that too high data volume really is the cause of the problem. To exclude other problems, check your reporting with the Troubleshooting Tools.

If you have performance problems in ASR reporting scenarios, you can respond in two ways:

  • Optimize the extraction of the data and writing the aggregates in BW for the same number of ASRs collected.

  • Reduce the scope of ASRs collected. This method will usually produce a greater performance improvement, but you reduce the level of detail of the data saved for different applications, so some reports may no longer work properly, depending on the settings changes.

This section presents both options:

Optimizing Managed System Read Performance

When reading ASR aggregates from managed systems, the Extractor Framework calls the primary extractor E2E_LUW_PRIMARY_EXTRACTOR_SSR for each system. this calls the function module /SDF/ASR_READ_AGGR to get the aggregates.

The function module /SDF/ASR_READ_AGGR calls the function module /SDF/ASR_READ_AGGR_ONE_INST in every instance of the managed system in which the aggregates are read. This function module can be called in parallel for different instances. You can set the scope of parallelization.

Proceed as follows:

  1. In the launchpad in the group SAP Solution Manager Administration, call the tile Analyze Reporting - Business Warehouse.

  2. In the table Reporting Scenarios, select System Reports, and Scenario Setup.

  3. In the Data Collection Settings tab, you can specify which ASRs are to be collected, with which technical settings, depending on the managed system.

    Expand the entry for a managed ABAP system, and in the row Statistical Data Records (ABAP) choose Expert Settings.

  4. Go to change mode. The two most important settings are:

    Parameters

    Meaning

    Default Value

    Max. no of Results Data Records

    Maximum number of aggregated records passed per instance, per call

    10.000

    Max. Overall Data Record Result

    Maximum number of aggregated records which can be passed per system and call

    20.000

    The degree of parallelization is the Max. Overall Number of Data Records divided by Max. no of Results Data Records. Increase the degree of parallelization for managed systems with a lot of instances, by increasing the Max. Overall Number of Data Records.

  5. Save your changes.

Note Note

The value of this parameter can greatly influence the technical conditions for loading ABAP statistics records. Examine the consequences of your changes carefully.

End of the note.
Optimizing Write Performance in the BW Data Destinations

If the job CCMS_ASR_AGGR_DATA_UPDATE, which passes ASR aggregates from data store objects to InfoCubes, in the BW system (see Statistics Data Flow), takes too long, you can increase its maximum possible degree of parallelization. The degree of parallelization determines how many instances of the job can run at the same time.

Note Note

As the job runs hourly, parallelization only has an effect if the mean run time is significantly more than an hour.

End of the note.

To change the degree of parallelization, proceed as follows:

  1. Start the transaction se16 in the BW system. Enter the Table Name CCMSBICONF, and choose Table Contents (Table Contents).

  2. You are in the selection screen for the table CCMSBICONF. In the field CONFIGTYPE, enter GENDL_PARALLELIZATION, and choose Execute (Execute).

  3. Two rows with the following entries in the PARAMNAME column, are displayed:

    • NUMBER_BTC_TO_STAY_FREE

      This parameter determines how many background work processes must remain free when the job is parallelized. The default value is 2.

    • NUMBER_MAX_PARALLEL_RUNS

      This parameter determines how many instances of the job at the most can run in parallel. The default value is 3.

  4. To change the value of this parameter, select its row, choose Change (Change), and enter a value in the field PARAMVALUE.

    If the system has enough background work processes, you can carefully increase the value of the parameter NUMBER_MAX_PARALLEL_RUNS.

  5. Save your entries.

Reduce the scope of ASRs collected

To reduce the system load of passing and aggregating ASRs, and improve performance, reduce the amount of information in the aggregation. There are several ways of doing this. They are listed below in ascending order of expected performance improvement.

Note Note

The list uses terms like profile and dimension. If you do not understand these terms in this context, consult the glossary in Check Table Size and Structure of ASR Aggregates.

End of the note.
  • You can discard some data from the aggregation. You can, for example, discard the user names. If 100 users are regularly active in a system, discarding the user names reduces the data by a factor of up to 100. Make this setting for each managed system.

    For a detailed description of these settings, see Change ASR Aggregate Extraction Settings and Example of ASR Aggregate Extraction Changes.

  • The previous point has the advantage that you can discard dimensions of the ASR aggregate profiles for saving in BW, very accurately. But, as you must make these settings for each managed system, it is laborious. An alternative is the report SMREP_ASR_EASY_CONFIG, in which you can discard all dimensions which can be discarded in the BI Diagnostic Center, for all profiles, for some or all managed systems, quickly and easily.

    It is the greatest possible reduction of the ASR aggregates saved, without deactivating profiles entirely. Deactivate Saving of All Optional ASR Aggregate Dimensions, below, describes the procedure in detail.

  • In contrast to the previous point, in which you only discard individual dimensions (e.g. RFC destinations) of a profile (e.g. RFC servers) of the aggregation, you can also except entire profiles from saving in BW. You can do this globally, for all managed systems. Deactivate Saving Entire ASR Aggregate Profiles, Globally, below, describes the procedure in detail.

Caution Caution

ASR reports are not reliable if aggregation information which is in the default configuration is discarded. Check whether you need affected reports, before you change these settings.

End of the caution.
Deactivate Saving All Optional ASR Aggregate Dimensions

The report SMREP_ASR_EASY_CONFIG discards all dimensions which can be discarded in the BI Diagnostic Center, for all profiles, for some or all managed systems, quickly and easily.

Note Note

You can display the deactivatable dimensions in the BI Diagnostic Center, as follows:

  1. In the launchpad in the group SAP Solution Manager Administration, call the tile Analyze Reporting - Business Warehouse.

  2. In the table Analysis Scenarios, select the scenario System Analyses, and Scenario Setup.

  3. The possible ASR data collection settings are in the Data Collection Setting tab. In the Hierarchy drop-down list, select the default setting System/Category/File Name.

  4. Expand an ABAP system in the list, and in the Statistical Data Records (ABAP) row, chooseExpert Settings.

  5. You can set flags here for profiles, with which you discard dimensions for saving ASR aggregates. The report SMREP_ASR_EASY_CONFIG discards all displayed dimensions.

End of the note.

Proceed as follows:

  1. Start transaction se38, and run the report SMREP_ASR_EASY_CONFIG.

  2. In the field System ID (* possible) enter the ID of the managed system whose ASR data collection settings you want to change. To change the settings for all managed systems, enter *.

  3. To discard all discardable dimensions for the selected systems, for the saved ASR aggregates, choose Load ASR with Min. Details.

    This should reduce your data volume in Business Warehouse noticeably. However, various reports that are based on ASRs will no longer function correctly.

  4. To save all discardable dimensions for the selected systems, for the saved ASR aggregates, choose Load ASR with Max. Details.

Discard ASR Profiles Globally

The greatest reduction of the ASR aggregates is achieved by excluding entire profiles from saving in BW.

Proceed as follows:

  1. In the launchpad in the group SAP Solution Manager Administration, call the tile Analyze Reporting - Business Warehouse.

  2. In the table Analysis Scenarios, select the scenario System Analyses, and Scenario Setup.

  3. The possible ASR data collection settings are in the Data Collection Setting tab. In the Hierarchy dropdown list box, choose Category/File Name/System.

  4. Expand the category Statistical Data Records (ABAP), and go to change mode, with Display/Change.

  5. Profiles are listed in the Data Name column. Reset the flag to no longer save the profile in BW, for all managed systems.

    Note Note

    To no longer save individual profile for specified managed systems, expand the subtree for the profile, and reset the flag for the ABAP systems.

    End of the note.
  6. Save your changes.