Graph Management Engine Spatial Cell Versioning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional graph management systems face scalability issues and data storage drawbacks due to the need to process and store entire graphs sequentially, leading to delays and inefficient data access and storage.

Innovation Solution

The implementation of a graph management engine that utilizes spatial projection techniques to identify and manage cells within a graph, allowing for versioning and storage of only modified sub-portions, enabling decentralized and concurrent data access and storage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the entire graph is utilized to identify response data for requests, then data completeness is ensured, but processing delays and scalability issues occur

Engineering Contradiction:
Improvedata completenessVSAvoidprocessing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The graph is divided into multiple cells that can be independently managed and processed. Each cell represents a portion of the graph data, allowing selective access and processing of only relevant cells for a given request, thereby improving processing speed while maintaining data completeness through coordinated cell operations.

Inventive Principle:
Principle #1Segmentation

2Reliability

If requests are processed sequentially to avoid data collisions, then data consistency is maintained, but processing efficiency decreases

Engineering Contradiction:
Improvedata consistencyVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

By segmenting the graph into independent cells with their own version identifiers, multiple requests can process different cells concurrently without causing data collisions. The version tracking mechanism ensures data consistency within each cell while allowing parallel processing across cells, resolving the trade-off between consistency and efficiency.

Inventive Principle:
Principle #1Segmentation

3Reliability

If multiple versions of the entire graph are stored to support modifications, then version control is achieved, but data storage requirements increase

Engineering Contradiction:
Improveversion controlVSAvoidstorage space
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

Instead of storing multiple complete graph versions, the system segments the graph into cells and stores version information at the cell level. This allows version control for modified portions while sharing common unmodified cells across versions, dramatically reducing storage requirements while maintaining full version control capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system creates copies only of modified cell data rather than copying entire graphs. Each cell maintains its own version history, allowing selective replication of only the necessary data portions, which reduces overall storage consumption while preserving version control integrity.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11126658B1Scalable graph authoring and versioning techniques
Publication Date: 2021.09.21 AMAZON TECH INC
  • US11126658B1 patent drawing
  • US11126658B1 patent drawing
  • US11126658B1 patent drawing

AI summary

System and methods are maintaining various versions of a graph (e.g., a geometric graph) by a graph management engine. A graph may be partitioned into a number of cells (e.g., utilizing a spatial projection formula). Each cell may be associated with graph data such as nodes and/or edges that are located within the area defined by the boundaries of a cell. The graph management engine may process modifications to the graph. Upon determining that a modification is to be made to a cell, the graph management engine may generate a new cell to contain the previous cell content as modified. The new cell may be assigned a new cell identifier, and a version map corresponding to current cell version identifiers may be maintained. Subsequent data requests for graph data may be processed utilizing the version map to ensure that current graph data is provided in response to the request.