Database Server Hierarchy Filter Transformation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Complex calculations involving hierarchical data scenarios often result in resource-intensive queries that consume significant resources and lead to increased response times and memory usage, particularly in big data scenarios, due to inefficient data flow and processing between application servers and database servers.

Innovation Solution

The database server optimizes hierarchical queries by transforming hierarchy filters into inlist filters and pushing them down to lower calculation nodes, thereby reducing the need for unnecessary data processing and memory usage, and omits unnecessary paths and attributes in the calculation scenario to enhance performance and efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If complex calculations involving hierarchical data are executed using traditional query processing, then complete data processing is achieved, but resource consumption and response time increase significantly

Engineering Contradiction:
Improvecompleteness of data processingVSAvoidquery response time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by transforming hierarchy filters into inlist filters before query execution. The database server pre-processes the hierarchy filter conditions, extracts the necessary hierarchy levels, and converts them into inlist filters that can be efficiently evaluated. This preparation work is done in advance, allowing the actual query execution to proceed faster without sacrificing processing completeness.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts only the necessary hierarchy information needed to answer the query. Instead of processing the entire hierarchy structure, the system identifies and extracts specific hierarchy levels and filters that are relevant to the query requirements. This extraction principle reduces the amount of data that needs to be processed while maintaining the completeness of the required results.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If traditional hierarchical query processing is used, then all hierarchy data is processed, but memory consumption increases

Engineering Contradiction:
Improvecompleteness of hierarchy processingVSAvoidmemory usage
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts only the specific hierarchy levels and filter conditions that are necessary to answer the query. By identifying and extracting only the relevant hierarchy information rather than loading and processing the entire hierarchy structure, memory consumption is significantly reduced while maintaining the completeness of the required processing.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the parameter representation of hierarchy filters by transforming them into inlist filters. This parameter transformation allows the hierarchy conditions to be represented in a more compact form that consumes less memory during query execution, while still preserving the complete hierarchy processing capability.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If hierarchy filters are pushed down to lower calculation nodes, then query performance improves, but filter transformation complexity increases

Engineering Contradiction:
Improvequery execution speedVSAvoidfilter transformation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by performing the filter transformation in advance during query optimization. The database server transforms hierarchy filters into inlist filters before pushing them down to lower calculation nodes. This preliminary transformation simplifies the execution phase, as the transformed filters are already in the appropriate format for efficient evaluation at lower nodes, thereby improving query execution speed without adding complexity during runtime.

Inventive Principle:
Principle #10Preliminary action

4Reliability

If unnecessary paths and attributes are included in calculation scenario, then complete data retrieval is ensured, but processing efficiency decreases

Engineering Contradiction:
Improvecompleteness of data retrievalVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts and includes only the necessary paths and attributes required to answer the query in the calculation scenario. By analyzing the query requirements and extracting only the relevant data paths and attributes rather than retrieving all possible data, the system ensures complete data retrieval for the required information while improving processing efficiency by eliminating unnecessary data transmission and processing.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS9767151B2Optimizing database queries having hierarchy filters
Publication Date: 2017.09.19 SAP SE
  • US9767151B2 patent drawing
  • US9767151B2 patent drawing
  • US9767151B2 patent drawing

AI summary

A query is received by a database server from a remote application server. The query is associated with a calculation scenario that defines a data flow model that includes one or more calculation nodes and that includes at least one hierarchy filter. Each hierarchy filter is a filter of at least one hierarchy table. Each calculation node defines one or more operations to execute on the database server. Thereafter, the database server instantiates the calculation scenario. The instantiating includes optimizing the calculation scenario by transforming at least one hierarchy filter and pushing down the at least one transformed hierarchy filter to a lower calculation node. The database server then executes the operations defined by the calculation nodes of the optimized calculation scenario to result in a responsive data set. The database server can subsequently provide the data set to the application server.