# US 2021/0240736 A1 · Method and Apparatus for Monitoring an In-memory Computer System

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2021/0240736 A1
- Document ID: US20210240736A1
- Status: Published application
- Kind: A1
- Application number: 17/236,264
- Filed: 2021-04-21
- Published: 2021-08-05
- Earliest claimed: 2013-11-25
- Assignees: Sap SE
- Applicants: Sap SE
- Inventors: Marc-Philip Werner; Wolfgang Auer
- Web page: https://patentgrep.com/patent/US20210240736A1

## CPC

- G06F 16/283: {Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP}
- G06F 11/3476: {Data logging (G06F11/14, G06F11/2205 take precedence)}
- G06F 16/2282: {Tablespace storage structures; Management thereof}
- G06F 16/2379: {Updates performed during online database operations; commit processing}
- G06F 11/3072: {where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting}
- G06F 11/3409: {for performance assessment}
- G06F 11/3452: {Performance evaluation by statistical analysis}
- G06F 16/21: Design, administration or maintenance of databases
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

An in-memory computing system for conducting on-line transaction processing and on-line analytical processing includes system tables in main memory to store runtime information. A statistics service can access the runtime information using script procedures stored in the main memory to collect monitoring data, generate historical data, and other system performance metrics while maintaining the runtime data and generated data in the main memory.

## Claims

### Claim 1

A computer-implemented method of monitoring system performance of an in-memory computer system, the method comprising:
executing, by the in-memory computer system, a plurality of on-line transaction processes (OLTPs), wherein executing the plurality of OLTPs includes:
receiving runtime data, and
storing the runtime data in a main memory component of the in-memory computer system for runtime data collection processes;
executing, by the in-memory computer system, a plurality of on-line analytical processes (OLAPs) on the same runtime data for runtime data analysis processes, wherein executing the plurality of OLAPs produces a plurality of runtime data analysis results;
storing, by the in-memory computer system, the runtime data in a plurality of system tables in the main memory component;
executing, by the in-memory computer system, a statistics scheduler process; and
performing, by the in-memory computer system, the runtime data collection processes and the runtime data analysis processes in accordance with the statistics scheduler process, wherein performing the runtime data collection processes and the runtime data analysis processes includes copying at least some of the runtime data from one or more of the plurality of system tables to one or more of a plurality of statistics tables in the main memory as monitoring data.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein executing the statistics scheduler process includes invoking one or more query statements.

### Claim 3 (depends on 1)

The computer-implemented method of claim 1, wherein executing the statistics scheduler process includes executing one or more select commands

### Claim 4 (depends on 1)

The computer-implemented method of claim 1, wherein executing the statistics scheduler process includes executing one or more insert commands

### Claim 5 (depends on 1)

The computer-implemented method of claim 1, wherein executing the statistics scheduler process includes associating a time indicator with the runtime data.

### Claim 6 (depends on 1)

The computer-implemented method of claim 1, wherein executing the statistics scheduler process includes collecting the runtime data according to predetermined settings stored in a configuration file.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1, wherein executing the statistics scheduler process includes evaluating alert conditions according to predetermined settings stored in a configuration file.

### Claim 8 (depends on 1)

The computer-implemented method of claim 1, further comprising:
evaluating, by the in-memory computer system, the monitoring data according to one or more alert condition definitions; and
writing, by the in-memory computer system, an alert to one or more of a plurality of alert tables stored in the main memory when an alert condition is detected.

### Claim 9 (depends on 1)

The computer-implemented method of claim 1, further comprising:
evaluating, by the in-memory computer system, the plurality of runtime data analysis results; and
adjusting a performance of the in-memory computer system as a result of evaluating the plurality of runtime data analysis results.

### Claim 10 (depends on 1)

The computer-implemented method of claim 1, wherein executing the statistics scheduler process includes scheduling a first script procedure stored in the main memory, and
wherein the runtime data collection processes and the runtime data analysis processes are performed in accordance with the first script procedure.

### Claim 11 (depends on 10)

The computer-implemented method of claim 10, wherein executing the statistics scheduler process includes:
scheduling a second script procedure stored in the main memory;
performing data analysis on the monitoring data in one or more of the plurality of statistics tables in accordance with the second script procedure; and
generating a plurality of system performance metrics in accordance with performing the data analysis on the monitoring data.

### Claim 12 (depends on 1)

The computer-implemented method of claim 1, wherein the runtime data collection processes are adapted to be edited independently of the runtime data analysis processes.

### Claim 13 (depends on 1)

The computer-implemented method of claim 1, further comprising:
performing, by the in-memory computer system, one or more predetermined data analyses on the monitoring data, wherein performing the one or more predetermined data analyses includes producing a plurality of system performance metrics; and
receiving, by the in-memory computer system from a business intelligence tool, one or more requests for some of the system performance metrics.

### Claim 14

An apparatus comprising an in-memory computing system, the in-memory computing system comprising:
a plurality of server subsystems;
a main memory subsystem in data communication with the plurality of server subsystems and having stored thereon one or more system tables and one or more statistics tables;
a scheduler subsystem in data communication with the main memory subsystem;
a disk storage subsystem; and
computer executable instructions stored among the main memory subsystem and the disk storage subsystem, wherein the computer executable instructions are configured to cause the plurality of server subsystems to:
execute a plurality of on-line transaction processes (OLTPs), wherein executing the plurality of OLTPs includes:
receiving runtime data, and
storing the runtime data in a main memory component of the in-memory computer system for runtime data collection processes;
execute a plurality of on-line analytical processes (OLAPs) on the same runtime data for runtime data analysis processes, wherein executing the plurality of OLAPs produces a plurality of runtime data analysis results; and
store the runtime data in a plurality of system tables in the main memory component;
wherein the computer executable instructions are configured to cause the scheduler subsystem to:
execute a statistics scheduler process; and
perform the runtime data collection processes and the runtime data analysis processes in accordance with the statistics scheduler process, wherein performing the runtime data collection processes and the runtime data analysis processes includes copying at least some of the runtime data from one or more of the plurality of system tables to one or more of a plurality of statistics tables in the main memory as monitoring data.

### Claim 15 (depends on 14)

The apparatus of claim 14, wherein the computer executable instructions are configured to cause the scheduler subsystem further to:
evaluate the monitoring data according to one or more alert condition definitions; and
to write an alert to one or more of a plurality of alert tables stored in the main memory when an alert condition is detected.

### Claim 16 (depends on 14)

The apparatus of claim 14, wherein the computer executable instructions are configured to cause the scheduler subsystem further to:
evaluate the plurality of runtime data analysis results; and
adjust a performance of the in-memory computer system as a result of evaluating the plurality of runtime data analysis results.

### Claim 17 (depends on 14)

The apparatus of claim 14, wherein the runtime data collection processes are adapted to be edited independently of the runtime data analysis processes.

### Claim 18 (depends on 14)

The apparatus of claim 14, wherein the computer executable instructions are configured to cause the plurality of server subsystems further to:
perform one or more predetermined data analyses on the monitoring data, wherein performing the one or more predetermined data analyses includes producing a plurality of system performance metrics; and
receive, from a business intelligence tool, one or more requests for some of the system performance metrics.

### Claim 19

A non-transitory computer readable storage medium having stored thereon computer executable instructions that, when executed, cause one or more data processing units of an in-memory computer system to perform a method comprising:
executing, by the in-memory computer system, a plurality of on-line transaction processes (OLTPs), wherein executing the plurality of OLTPs includes:
receiving runtime data, and
storing the runtime data in a main memory component of the in-memory computer system for runtime data collection processes;
executing, by the in-memory computer system, a plurality of on-line analytical processes (OLAPs) on the same runtime data for runtime data analysis processes, wherein executing the plurality of OLAPs produces a plurality of runtime data analysis results;
storing, by the in-memory computer system, the runtime data in a plurality of system tables in the main memory component;
executing, by the in-memory computer system, a statistics scheduler process; and
performing, by the in-memory computer system, the runtime data collection processes and the runtime data analysis processes in accordance with the statistics scheduler process, wherein performing the runtime data collection processes and the runtime data analysis processes includes copying at least some of the runtime data from one or more of the plurality of system tables to one or more of a plurality of statistics tables in the main memory as monitoring data.

### Claim 20 (depends on 19)

The non-transitory computer readable storage medium of claim 19, wherein the computer executable instructions are further configured to cause the one or more data processing units to perform the method further comprising:
performing, by the in-memory computer system, one or more predetermined data analyses on the monitoring data, wherein performing the one or more predetermined data analyses includes producing a plurality of system performance metrics; and
receiving, by the in-memory computer system from a business intelligence tool, one or more requests for some of the system performance metrics.
