Monitoring and Alerting Infrastructure (MAI) –
Calculation Engine Framework using “Hot Table”

New Framework with Improved Performance

You are using System Monitoring within SAP Focused Run to monitor a large landscape of systems. The job SAP_ALERT_CALCULATION_ENGINE (calculation engine) which calculates all the System Monitoring alerts is scheduled every minute. The calculation is quite performance intensive causing a heavy load on the HANA database.

Besides the job either sporadically or regularly might be taking more than one minute to complete causing a delay in the alert creation process. This document describes the technical background, the architecture of a new approach improving the performance and includes also a how-to section explaining how to activate and if needed also deactivate the new framework. 

Technical Background

The alert calculation engine is accessing the MAI_UDM_STORE table to calculate the alerts. This table is containing all the metric and event raw values for the last 29 days and therefore usually contains several billions of records depending on the landscape size. This explains why the calculation is that computationally intensive.

New Framework with "Hot Table"

Starting from SAP Focused Run 4.0 FP01 we support a second framework using a hot table architecture. The idea is to have a second table MAI_UDM_STORE_CM containing the hot metric data only. Since this table is way smaller having only several millions of entries as maximum, the event calculation becomes much faster.

  • The table requires a frequent housekeeping to be sure to have only the hot data. The housekeeping is done asynchronously at the end of each calculation engine run.
  • The new framework reduces the load on the HANA database significantly. 

How to Activate/Deactivate the Framework

To activate/deactivate the framework you can use the ABAP report mai_udm_store_cm_mngr. To activate the framework, just execute the report with the default selection. The report offers also the possibility to adjust the partitions manually which is not recommended to do. The report automatically selects a partitioning layout which matches the landscape size of monitored managed objects. Only in case the landscape size of monitored managed objects dramatically changes (e.g., from 5000 to 50000) a repartitioning might be needed. In that case it is recommended to contact the SAP support.

In case there are issues with the new framework, you can use this report also to deactivate the framework again and go back to the old framework.

With the execution of the report the framework is only partially active. All incoming metrics will be saved in the CM table already, but the read access cannot be done immediately as the CM table needs to be filled first before the framework is fully active.

Since some metrics are collected only very rarely (like weekly), the old framework is still used for the read access during the calculation engine run. Only once the new framework is fully active, you will experience the performance improvements. The timestamp when the new framework becomes fully active is visible within the mai_udm_store_cm_mngr report.

In case you want to speed up the process you can execute the report mai_udm_store_cm_filler which should be executed as background job. It will update the CM table from the raw metric store and the new framework will become active immediately afterwards. This report might run several hours on larger systems. It Is recommended to wait at least 1 hour after the partial activation of the framework via mai_udm_store_cm_mngr before you execute mai_udm_store_cm_filler, because otherwise too much data is transferred into the CM table.