Partition-wise Query Operator Placement in Distributed Databases

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional methods for executing query operations on partitioned tables in distributed database systems are inefficient due to high data transfer costs and other operational expenses.

Innovation Solution

Determining the optimal execution locations for query operators by calculating partition-wise and merged placement costs across database nodes, allowing for efficient processing based on partition locations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If partitions are unioned at a database node for query execution, then query operations can be performed on partitioned tables, but data transfer costs and operational expenses increase

Engineering Contradiction:
Improvequery execution capabilityVSAvoiddata transfer cost
Core Design Contradiction:
Ease of operationVSLoss of energy

Solution Approach 1:

The patent applies local quality by allowing different partitions to be executed at different database nodes based on their location. Instead of uniformly unioning all partitions at a single node, the system evaluates placement costs for each partition at various nodes and executes each partition locally at its optimal location, thereby reducing data transfer costs while maintaining query execution capability.

Inventive Principle:
Principle #3Local quality

2Ease of operation

If partitions are unioned at a single database node, then query operations can be executed, but processing efficiency decreases due to data transfer requirements

Engineering Contradiction:
Improvequery executionVSAvoidprocessing efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent applies segmentation by dividing the query execution process into partition-specific segments. Each partition is evaluated independently for its optimal execution location based on placement costs. This segmentation allows parallel execution of different partitions at different nodes, eliminating the need to wait for data transfer and unioning, thereby significantly improving processing efficiency.

Inventive Principle:
Principle #1Segmentation

3Reliability

If conventional unioning methods are used for partitioned tables, then queries can be executed, but data transfer and operational costs increase

Engineering Contradiction:
Improvequery execution reliabilityVSAvoidoperational cost
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent applies preliminary action by pre-calculating placement costs for each partition at every possible database node before query execution. This cost evaluation considers factors such as data locality, network distance, and node capacity. By performing this preliminary analysis, the system can proactively select optimal execution locations that minimize data transfer and operational costs while ensuring reliable query execution.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11294903B2Partition-wise processing distribution
Publication Date: 2022.04.05 SAP SE
  • US11294903B2 patent drawing
  • US11294903B2 patent drawing
  • US11294903B2 patent drawing

AI summary

A system includes determination, for a first partitioned physical query operator in a query operator tree, of a partition-wise placement cost based on a cost of each table partition associated with the first partitioned physical query operator and a partition-wise placement cost of any child physical query operator of the first partitioned physical query operator, determination of a placement cost for the first partitioned physical query operator physical query operator for each of a plurality of operator execution locations based on the determined partition-wise placement cost, determination, for a logical query operator associated with the first partitioned physical query operator, of a merged placement cost for each of the plurality of operator execution locations, and determination an execution location for the first partitioned physical query operator based on the determined partition-wise placement cost.