Runtime Callback Execution in In-Memory OLAP Engines

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing OLAP systems face challenges in efficiently executing runtime callback functions within in-memory computing engines, particularly in transforming multidimensional analytical metadata into executable forms and determining process callbacks to facilitate analytical processing.

Innovation Solution

The system transforms multidimensional analytical metadata into in-memory executable metadata, analyzes the metadata to determine process callbacks, and executes runtime callback functions by processing selection and transformation callbacks at nodes and part providers within the in-memory computing engine, enabling efficient analytical processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multidimensional analytical metadata is transformed into in-memory executable metadata to enable runtime callback execution, then analytical processing capability is improved, but system complexity increases

Engineering Contradiction:
Improveanalytical processing capabilityVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments the metadata transformation process into distinct phases: compilation phase where multidimensional analytical metadata is converted to in-memory executable metadata, and runtime phase where callback functions are executed. This segmentation allows complex transformations to be pre-processed and stored, reducing runtime complexity while maintaining analytical processing capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The compilation phase performs preliminary transformation of multidimensional analytical metadata into in-memory executable metadata before runtime execution. This preliminary action prepares the metadata structure, defines calculation scenarios, and establishes callback function associations in advance, enabling efficient runtime processing without performing complex transformations during execution.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If runtime callback functions are executed through selection and transformation callbacks at nodes and part providers, then data transformation efficiency is improved, but processing time increases

Engineering Contradiction:
Improvedata transformation efficiencyVSAvoidprocessing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system establishes continuous callback execution flows where selection callbacks and transformation callbacks are chained together at calculation nodes and part providers. Once a callback is triggered, the system continuously processes through the callback chain without interruption, maintaining useful action throughout the data transformation process and minimizing idle processing time.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

Calculation nodes and part providers serve as intermediaries that facilitate callback execution. These intermediaries manage the coordination between selection callbacks (which determine data filtering) and transformation callbacks (which perform data conversion), enabling efficient data flow management while reducing direct processing overhead between data sources and final outputs.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If in-memory executable calculation scenarios are analyzed to determine process callbacks, then callback execution accuracy is improved, but analysis complexity increases

Engineering Contradiction:
Improvecallback execution accuracyVSAvoidanalysis complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The in-memory executable calculation scenarios contain self-descriptive metadata that enables automatic identification of required process callbacks. The calculation scenario structure includes embedded information about which selection and transformation callbacks should be executed at each node, allowing the system to self-determine callback requirements without complex external analysis, thereby improving execution accuracy while reducing analysis complexity.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8666968B2Executing runtime callback functions
Publication Date: 2014.03.04 SAP SE
  • US8666968B2 patent drawing
  • US8666968B2 patent drawing
  • US8666968B2 patent drawing

AI summary

In an embodiment, a runtime callback function is a part of a code that is invoked upon execution of an associated function. To execute the runtime callback function associated with an in-memory computing engine, multidimensional analytical metadata associated with an application server is received and transformed into an in-memory executable metadata, to generate an instance of an in-memory executable calculation scenario. The instance of the in-memory executable calculation scenario is analyzed to determine process callbacks associated with nodes of the in-memory executable calculation scenario. Based upon the determined process callbacks, the runtime callback function is executed by executing a selection callback at the nodes and a transformation callback at part providers associated with the in-memory executable calculation scenario.