Tree-Based Data Structure Memory Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Tree-based data structures require substantial memory for overhead, limiting their use with large datasets due to memory allocation for each entry, which can exceed operating system limits.

Innovation Solution

Converting tree-based data structures to array-based data structures by populating original data into a container with a tree-based structure, then copying it to an array-based structure, deleting the tree-based structure, and maintaining the data in the array-based structure for reduced memory usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If tree-based data structures are used, then fast population and fast retrieval of data are achieved, but substantial memory is required for overhead allocation per entry

Engineering Contradiction:
Improvedata retrieval speedVSAvoidmemory usage
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent changes the fundamental parameter of data structure organization from tree-based (node-pointer architecture) to array-based (contiguous memory architecture). This parameter change transforms how data is stored and accessed, eliminating per-entry overhead while maintaining retrieval capability through sequential or indexed access patterns.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent creates a copy of the data from the tree-based structure into a separate array-based structure. By copying data rather than modifying the original structure, the patent preserves the functional benefits of the tree structure while eliminating its memory overhead through the array representation.

Inventive Principle:
Principle #26Copying

2Productivity

If tree-based data structures are used, then fast population and fast retrieval of data are achieved, but memory allocation per entry can exceed operating system limits for large datasets

Engineering Contradiction:
Improvedata population speedVSAvoidmemory allocation capacity
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent merges the advantages of both tree-based and array-based structures by maintaining data in an array format while using tree-based algorithms for insertion and deletion operations. This combination allows fast population and retrieval while utilizing the memory-efficient array structure for actual data storage.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent fundamentally changes the memory allocation parameter from per-entry allocation in tree structures to single-block allocation in array structures. This parameter change enables handling of large datasets by allocating memory in one contiguous block rather than accumulating many small allocations, thereby overcoming operating system limits.

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If array-based data structures are used, then overhead memory allocation is incurred once for the entire container, but fast retrieval operations may be slower compared to tree-based structures

Engineering Contradiction:
Improveoverhead memory allocationVSAvoiddata retrieval speed
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

The patent performs preliminary sorting of data in the array structure before retrieval operations. By pre-sorting the data, the patent enables efficient binary search and other optimized retrieval algorithms, compensating for the lack of automatic O(log n) retrieval that tree structures provide naturally.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a multi-functional system where the array structure serves both as efficient storage (low overhead) and as a basis for optimized retrieval operations. By implementing multiple access methods (direct indexing, binary search, linear search) on the same array, the patent achieves versatility in retrieval strategies to balance speed and memory efficiency.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS8775453B2System and method for reducing memory usage of tree-based data structures
Publication Date: 2014.07.08 CA TECH INC
  • US8775453B2 patent drawing
  • US8775453B2 patent drawing
  • US8775453B2 patent drawing

AI summary

A system and method for reducing memory usage is disclosed. The system and method include populating a first container with original data. The first container has a tree-based data structure that includes a plurality of nodes and a plurality of pointers. A block of memory is allocated to a second container that has an array-based data structure. The original data is copied from the first container to the second container. The original data, the plurality of nodes, and the plurality of pointers may be deleted from the first container.