Database Artifact Dependency Analysis for Deployment Ordering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database deployment infrastructure struggles to ensure correct ordering of design time artifacts based on their data dependencies, leading to potential errors due to unperceived implicit dependencies between artifacts.

Innovation Solution

A method is introduced to classify design time artifacts as source or sink artifacts, construct a dependency tree, and traverse it in reverse order to identify required source artifacts for sink artifacts, thereby defining a new call order that ensures all necessary source artifacts are executed before dependent sink artifacts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Extent of automation

If design time artifacts are deployed using a declarative approach with implicit dependency management, then deployment simplicity and automation are improved, but execution order correctness deteriorates due to unperceived implicit dependencies

Engineering Contradiction:
Improvedeployment automationVSAvoidexecution order correctness
Core Design Contradiction:
Extent of automationVSReliability

Solution Approach 1:

The system performs preliminary analysis of data dependencies between design time artifacts before deployment execution. By constructing a dependency tree and identifying implicit dependencies in advance, the system determines the correct execution order beforehand, ensuring that source artifacts are executed before sink artifacts that depend on them.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback by analyzing execution results and data flow patterns to identify implicit dependencies that were not explicitly defined. This feedback mechanism allows the system to learn from data access patterns and refine the dependency model, improving execution order correctness in subsequent deployments.

Inventive Principle:
Principle #23Feedback

2Reliability

If the system analyzes and enforces strict ordering of design time artifact calls, then execution correctness is improved, but system complexity increases due to dependency tree construction and traversal

Engineering Contradiction:
Improveexecution correctnessVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system performs self-service by automatically analyzing data dependencies and constructing the dependency tree without requiring manual intervention. The system autonomously traverses the dependency tree, identifies implicit dependencies, and determines execution order, reducing the need for complex manual configuration while maintaining execution correctness.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system replaces manual dependency analysis and ordering configuration with automated computational analysis. By using algorithms to traverse the dependency tree and identify data dependencies, the system substitutes complex manual mechanical processes with automated computational methods, reducing overall system complexity.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS9547490B1Sorting runtime calls of design time artifacts via data dependencies
Publication Date: 2017.01.17 SAP SE
  • US9547490B1 patent drawing
  • US9547490B1 patent drawing
  • US9547490B1 patent drawing

AI summary

Design time artifacts ordered in a dependency tree according to a call order defined by a database application accessing data in a database can be classified as source and/or sink artifacts. The dependency tree can be traversed in a direction reverse of the call order to determine, for each sink artifact, one or more required source artifacts upon which the sink artifact depends and that is needed to provide correct data inputs for operation of the sink artifact. Based on the traversing, implicitly dependent sink artifacts positioned earlier in the call order that their required source artifacts can be identified, and a new call order can be defined in which all of the required source artifacts for the implicitly dependent sink artifact are called before the implicitly dependent sink artifact.