Graph Data Structure Incremental Update Query

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data retrieval systems for graph data structures face inefficiencies due to the need for extensive batch processing to update lookup tables, leading to increased latency and decreased responsiveness when servicing queries.

Innovation Solution

Implementing a system that tracks incremental updates to graph data structures using key-value indices and change lists, allowing for targeted searches and reducing the need for full graph processing by identifying and updating only impacted nodes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If batch processing is used to update lookup tables, then data accuracy is maintained, but processing time and latency increase

Engineering Contradiction:
Improvedata accuracyVSAvoidprocessing latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the graph data structure into multiple partitions or chunks, allowing incremental updates to be applied to specific segments rather than requiring full batch processing of the entire graph. This enables the system to maintain data accuracy while reducing processing latency by updating only the affected portions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by maintaining change lists that track modifications to the graph data structure before queries are executed. This allows the system to pre-process and identify affected nodes and edges, so that when queries arrive, the lookup tables are already updated or can be quickly updated only where necessary.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If full graph processing is performed, then complete data consistency is achieved, but computational resources are excessively consumed

Engineering Contradiction:
Improvedata consistencyVSAvoidcomputational resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent extracts and tracks changes to specific nodes and edges in the graph data structure using change lists. Instead of processing the entire graph, the system extracts only the modified portions and applies updates selectively. This maintains data consistency while dramatically reducing computational resource consumption by avoiding unnecessary processing of unchanged data.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system applies partial action by performing updates only on the subset of the graph that has changed, rather than applying full batch processing to the entire graph. The change lists enable the system to identify and process only the necessary portions, achieving data consistency with minimal computational overhead.

Inventive Principle:
Principle #16Partial or excessive action

3Measurement precision

If lookup tables are updated frequently, then query accuracy is improved, but system responsiveness decreases

Engineering Contradiction:
Improvequery accuracyVSAvoidsystem responsiveness
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent implements a dynamic update mechanism where lookup tables are updated incrementally based on change lists rather than through frequent full batch updates. The system dynamically adjusts the update process by identifying and processing only the changed portions of the graph, maintaining query accuracy while preserving system responsiveness through optimized update timing and scope.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11561965B2Data retrieval via incremental updates to graph data structures
Publication Date: 2023.01.24 ADOBE INC
  • US11561965B2 patent drawing
  • US11561965B2 patent drawing
  • US11561965B2 patent drawing

AI summary

Certain embodiments involve tracking incremental updates to graph data structures and thereby facilitating efficient data retrieval. For instance, a computing system services a first query for one or more segments of computing devices, online entities, or both. The computing system services the first query by searching of a set of nodes from a graph data structure. The computing system receives a second query after the graph data structure has been modified. The computing system identifies, from a change list for tracking changes to the graph data structure, a subset of the nodes impacted by the modification to the graph data structure. The computing system services the second query by searching the subset of impacted nodes in the graph data structure.