Database Calculation Engine Optimizing Data Flow

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data flow between application and database servers is inefficient due to complex calculations requiring numerous queries, which consume significant resources and result in excessive data transport and processing.

Innovation Solution

A database calculation engine that receives a calculation scenario from an application server, instantiates it, and executes operations defined by calculation nodes, optimizing data flow by removing unnecessary paths and attributes, and allowing filtering and sorting, thereby reducing data transport and processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If complex calculations are performed using numerous queries between application server and database server, then calculation functionality is achieved, but data transport volume and processing resources are significantly consumed

Engineering Contradiction:
Improvecalculation functionalityVSAvoiddata transport and processing resources
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The patent introduces calculation views as intermediary structures between the application server and database server. These calculation views pre-process and aggregate data according to defined calculation scenarios, serving as mediators that reduce the need for numerous complex queries. The calculation view contains pre-defined calculation logic and intermediate results, allowing the application server to obtain processed data with fewer queries, thereby reducing data transport volume and processing resource consumption.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If multiple roundtrips of data are performed between database server and application server, then query processing is completed, but execution time and network overhead increase

Engineering Contradiction:
Improvequery processing completionVSAvoidexecution time and network overhead
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by pre-calculating and storing intermediate results in calculation views before they are needed. Calculation scenarios define the computation logic in advance, and the database server pre-processes data according to these scenarios, storing results in the calculation view. When the application server needs data, it can directly query the pre-computed results rather than performing complex calculations through multiple roundtrips, significantly reducing execution time and network overhead.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If all paths and attributes from calculation scenario are transmitted to application server, then complete data set is provided, but data transport volume increases

Engineering Contradiction:
Improvecomplete data set provisionVSAvoiddata transport volume
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The patent applies the extraction principle by selectively retrieving only the necessary paths and attributes from the calculation scenario results. The system analyzes which specific data elements are required by the application server and extracts only those, rather than transmitting the complete calculated data set. This selective extraction reduces data transport volume while still providing the complete set of required data for the application's needs.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS9672250B2Database calculation engine
Publication Date: 2017.06.06 SAP SE
  • US9672250B2 patent drawing
  • US9672250B2 patent drawing
  • US9672250B2 patent drawing

AI summary

A select query or a data referencing a calculation scenario is received by a database server from a remote application server. The specified calculation scenario is one of a plurality of calculation scenarios and it defines a data flow model that includes one or more calculation nodes. Each calculation node defines one or more operations to execute on the database server. Thereafter, the database server instantiates the specified calculation scenario and executes the operations defined by the calculation nodes of the instantiated calculation scenario to result in a responsive data set. This data set is then provided by the database server to the application server. Related apparatus, systems, techniques and articles are also described.