Directed Acyclic Graph Parallel Computation for Database Task Dependency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current database calculation methods in enterprise systems, such as inventory management, face complexity in computing production costs due to indirect overhead costs, which require sequential processing and result in high time complexity, especially when dealing with large datasets and intricate data relations.

Innovation Solution

The implementation of parallel-computation of tasks in a directed acyclic graph, where task dependencies are converted into a topologically ordered graph, allowing for parallel processing across layers, reducing the time complexity from O(N*R) to O*D, where D is the depth of dependency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If sequential processing is used for database calculations in inventory management, then task dependency accuracy is maintained, but computational time complexity increases to O(N*R)

Engineering Contradiction:
Improvetask dependency accuracyVSAvoidcomputational time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent segments the computation tasks into multiple layers based on their dependency relationships, represented as a directed acyclic graph. Tasks with the same dependency level are grouped into the same layer, allowing independent parallel execution within each layer while maintaining inter-layer dependency constraints. This segmentation enables the system to process N tasks with R dependencies in O(D) time where D is the depth of the dependency graph, rather than sequential O(N*R) time.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of parallel processing by organizing tasks across multiple computational layers. Instead of processing tasks in a single sequential dimension, the system creates a multi-layered computational structure where each layer represents a level of dependency depth. This dimensional transformation allows simultaneous execution of independent tasks across different processing units while preserving the original dependency relationships through the layer hierarchy.

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

2Productivity

If parallel processing is implemented without topological ordering, then computational speed increases, but task dependency relationships become incorrect

Engineering Contradiction:
Improvecomputational speedVSAvoidtask dependency correctness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent performs preliminary topological sorting of tasks before parallel execution begins. This preliminary action establishes the correct execution order by assigning each task to a specific layer based on its dependency relationships. By pre-organizing tasks into layers where all dependencies of a task are satisfied by tasks in previous layers, the system ensures that parallel processing within each layer will not violate dependency constraints, thus maintaining reliability while enabling speedup.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces layer assignment as an intermediary mechanism between task dependency specification and parallel execution. The topological ordering algorithm acts as a mediator that translates the complex web of task dependencies into a simplified layered structure. This intermediary representation allows the parallel processing system to execute tasks concurrently within layers while automatically respecting all dependency relationships, thus bridging the gap between speed and correctness requirements.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9576072B2Database calculation using parallel-computation in a directed acyclic graph
Publication Date: 2017.02.21 SAP SE
  • US9576072B2 patent drawing
  • US9576072B2 patent drawing
  • US9576072B2 patent drawing

AI summary

Disclosed herein are technologies related to database calculation that utilizes parallel-computation of tasks in a directed acyclic graph. In accordance with one aspect, dependency of tasks is converted into a directed acyclic graph that topologically orders the tasks into layers of tasks. A database calculation may be performed, wherein the database calculation computes in parallel the tasks in each layer of the layers of tasks.