Partition-Aware Distributed Window Operator Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As database size grows, performing window functions becomes increasingly difficult, leading to performance issues due to inefficiencies in existing database systems.

Innovation Solution

Implementing a method where a partitioned database table is assigned to different nodes for local calculation of window function sub-results, with these sub-results then combined using a UNION operation to produce the overall window function result, leveraging distributed computation for improved performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If window functions are performed on large databases using traditional single-node processing, then calculation completeness is maintained, but performance deteriorates and computation time increases

Engineering Contradiction:
Improvewindow function calculation performanceVSAvoidcomputation time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent divides the database table into multiple partitions based on partition columns, and assigns these partitions to different nodes in a distributed system. Each node independently calculates window function sub-results for its assigned partitions, then the results are combined to produce the overall window function result. This segmentation enables parallel processing and resolves the performance deterioration issue on large databases.

Inventive Principle:
Principle #1Segmentation

2Productivity

If the database table is partitioned and assigned to different nodes for parallel processing, then calculation performance improves, but system complexity increases

Engineering Contradiction:
ImprovethroughputVSAvoidsystem architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent employs a window function calculation orchestrator that serves multiple functions: receiving window operator indications, determining partition compatibility, assigning partitions to nodes, and combining results. This multi-functional orchestrator simplifies the overall system architecture by centralizing coordination logic, making the distributed system easier to manage despite the increased computational parallelism.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Quantity of substance

If existing database systems process window functions on growing databases, then data processing capability is maintained, but performance suffers due to inefficiencies

Engineering Contradiction:
Improvedatabase sizeVSAvoidcalculation speed
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent transitions from single-node sequential processing to multi-node parallel processing, adding the dimension of distributed computation. By leveraging multiple nodes simultaneously, the system maintains the ability to handle large database sizes while significantly improving calculation speed through parallel execution of window functions across different partitions.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS9852184B2Partition-aware distributed execution of window operator
Publication Date: 2017.12.26 SAP SE
  • US9852184B2 patent drawing
  • US9852184B2 patent drawing
  • US9852184B2 patent drawing

AI summary

Partition-aware calculation of a window operator can be supported. Different nodes can calculate window function sub-results on database partitions locally, in parallel and independently. Recognition of scenarios in which such parallelism is permissible can be performed. Overall superior performance can result.