Ancestry Determination in Directed Acyclic Graphs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for determining hierarchical relationships in directed acyclic graphs (DAGs) incur performance penalties due to the multiplicity of paths and node movements, requiring extensive navigation to establish ancestry between nodes.

Innovation Solution

The method involves designating nodes as points of interest, storing data on the closest point of interest and change times, allowing for ancestry validation by comparing change time data, thereby minimizing traversal and reducing performance penalties. This includes creating, modifying, and validating hierarchies while only traversing the hierarchy when necessary.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If existing methods navigate a hierarchy along all potential paths to determine ancestry, then ancestry relationships can be established, but performance penalties occur due to extensive traversal required

Engineering Contradiction:
Improveancestry determination accuracyVSAvoidancestry determination speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by pre-computing and storing ancestry information in ancestor pointers within each node, and maintaining change time data for points of interest. This allows the ancestry determination to skip extensive traversal by directly comparing stored change times, thus resolving the contradiction between reliable ancestry determination and fast performance

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention creates copies of ancestry-relevant information (change time data, ancestor pointers) and stores them in each node. Instead of traversing to verify ancestry, the system copies the essential verification data (change times) to local nodes, enabling fast comparison-based ancestry determination while maintaining accuracy

Inventive Principle:
Principle #26Copying

2Measurement precision

If the system traverses the hierarchy to validate ancestry, then accurate ancestry relationships are confirmed, but time is lost due to multiplicity of paths and node movements

Engineering Contradiction:
Improveancestry validation accuracyVSAvoidtraversal time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system extracts only the essential information needed for ancestry validation (change time data and ancestor pointers) from the full hierarchy traversal. By taking out just the critical verification data and storing it locally in each node, the system eliminates the need to traverse multiple paths, thus achieving accurate validation without time loss

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The invention changes the parameter being compared from structural hierarchy position to temporal change time data. Instead of traversing paths to determine ancestry, the system compares change time parameters stored in nodes, transforming a spatial traversal problem into a temporal comparison problem that is much faster while maintaining precision

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If the system creates snapshots, quotas, or replications in DAGs, then data management operations are performed, but performance penalties occur due to extensive hierarchy navigation required

Engineering Contradiction:
Improvedata management capabilityVSAvoidoperation speed
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by pre-storing ancestry information and change time data in each node before snapshot, quota, or replication operations are needed. This preliminary preparation allows these data management operations to execute quickly by comparing pre-stored change times rather than traversing the full hierarchy, thus maintaining versatility while improving operation speed

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11232094B2Techniques for determining ancestry in directed acyclic graphs
Publication Date: 2022.01.25 VAST DATA LTD
  • US11232094B2 patent drawing
  • US11232094B2 patent drawing
  • US11232094B2 patent drawing

AI summary

A system and method for determining ancestry in directed acyclic graphs (DAGs). The method includes accessing a first node of a plurality of nodes in a DAG to obtain first change time data and ancestry data, wherein the plurality of nodes includes at least one point of interest, wherein the first change time data indicates a time of a first change to ancestry of the closest point of interest (CPOI); accessing a CPOI of the first node to obtain second change time data, wherein the second change time data indicates a time of a most recent change to ancestry of the CPOI; comparing the first change time data with the second change time data; and determining ancestry of the first node, wherein the ancestry of the first node is determined based on the ancestry data when the first change time data matches the second change time data.