Hierarchical Data Structure Node Update Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Hierarchical data structures face inefficiencies in querying and updating large datasets due to the need to traverse entire structures, leading to lengthy processing times and excessive resource usage, especially as the complexity and size of relationships increase.

Innovation Solution

Implementing a system that sets structural limits on the number of nodes in a hierarchical data structure and performs updates synchronously or asynchronously based on these limits to optimize performance and reduce latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If the hierarchical data structure stores large amounts of data with complex relationships, then the data management capability is improved, but the processing time and resource usage increase excessively

Engineering Contradiction:
Improvedata storage capacityVSAvoidprocessing time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent segments the hierarchical data structure into multiple partitions or subsets, allowing updates to be performed on smaller portions rather than traversing the entire structure. This segmentation enables parallel processing and reduces the time required for data management operations while maintaining the ability to store large amounts of data.

Inventive Principle:
Principle #1Segmentation

2Quantity of substance

If the hierarchical data structure includes thousands of nodes with complex relationships, then the data management capability is improved, but the computing resources required for updates increase excessively

Engineering Contradiction:
Improvenumber of nodesVSAvoidcomputing resource usage
Core Design Contradiction:
Quantity of substanceVSUse of energy by moving object

Solution Approach 1:

The patent applies partial action by performing updates only on the necessary portions of the hierarchical structure rather than traversing all nodes. By identifying and updating only the affected subsets of nodes, the system reduces computing resource usage while maintaining data integrity across the entire large-scale structure.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If synchronous updates are performed on all nodes in the hierarchical structure, then data consistency is improved, but the processing time and resource usage increase excessively

Engineering Contradiction:
Improvedata consistencyVSAvoidupdate efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the update operation into multiple independent tasks that can be performed in parallel on different partitions of the hierarchical structure. This segmentation maintains data consistency within each partition while enabling concurrent processing, thereby improving update efficiency without sacrificing reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements continuous update processing by maintaining multiple worker threads or processes that continuously process update operations on different partitions simultaneously. This approach ensures data consistency is maintained across all partitions while maximizing productivity through continuous parallel action.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS10831783B2Updating a hierarchical data structure
Publication Date: 2020.11.10 SALESFORCE INC
  • US10831783B2 patent drawing
  • US10831783B2 patent drawing
  • US10831783B2 patent drawing

AI summary

A method and system for updating nodes in a hierarchical data structure is described. The system receives an update to a first node representing a record in a hierarchical data structure. The system determines at least one other node that needs updating based on the update to the first node. The system compares the number of nodes that need updating based upon the update to the first node to a maximum number to determine whether the number of nodes that need updating is less than, equal to and greater than the maximum number. The system performs a synchronous update of the nodes that need updating in response to a determination that the number of nodes is less than or equal to the maximum number and an asynchronous update of the nodes that need updating in response to a determination that the number of nodes is greater than the maximum number.