Trie Data Structure Access Control via Segmented Locking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing concurrency control technologies for trie data structures face challenges in preventing collisions and interference between processes while maintaining operation speed, particularly in concurrent access scenarios.

Innovation Solution

A method is introduced to divide the trie data structure into smaller groups, allowing independent access permission management, where nodes are locked and unlocked based on a predetermined traversal order and threshold values to determine anchor nodes, enabling efficient access control through iteration operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If concurrency control technology is applied to prevent collisions and interference between processes, then reliability is improved, but device complexity increases due to lock management mechanisms

Engineering Contradiction:
Improvestability of trie data structureVSAvoidaccess control mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The trie data structure is segmented into multiple independent groups, where each group can be independently locked and accessed. This segmentation allows fine-grained concurrency control where only the specific group being modified is locked, rather than locking the entire data structure, thus improving reliability while managing complexity through modular organization

Inventive Principle:
Principle #1Segmentation

2Reliability

If lock management is implemented for concurrency control, then reliability is improved, but productivity decreases due to lock acquisition and release overhead

Engineering Contradiction:
Improvecollision preventionVSAvoidoperation speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Lock management is applied locally to specific groups within the trie rather than globally to the entire structure. Each group has its own lock state, allowing multiple operations to proceed simultaneously on different groups. This local approach prevents collisions (improving reliability) while minimizing lock overhead (maintaining productivity) by only locking the specific portion of data being accessed

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system applies partial locking by only locking the specific group that needs to be modified, rather than locking the entire trie structure. This partial action approach ensures collision prevention for the affected group while allowing other groups to remain accessible, thus maintaining overall operation speed while ensuring reliability

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If the entire trie data structure is locked for access control, then reliability is improved, but productivity decreases due to complete access blocking

Engineering Contradiction:
Improvedata structure stabilityVSAvoidconcurrent access speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The trie is divided into multiple independent groups that can be independently locked. This segmentation enables selective locking where only the specific group being accessed is locked, while other groups remain accessible to concurrent operations. This resolves the contradiction by maintaining data structure stability through proper locking while preserving concurrent access speed through parallel operations on different groups

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The lock management system dynamically adjusts which groups are locked based on the specific access pattern. Rather than static complete locking, the system dynamically locks only the necessary groups for the current operation, allowing maximum concurrency while ensuring data stability. This dynamic approach optimizes both reliability and productivity adaptively

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11256681B2Method and apparatus for controlling access to trie data structure
Publication Date: 2022.02.22 JEON WUNBAE
  • US11256681B2 patent drawing
  • US11256681B2 patent drawing
  • US11256681B2 patent drawing

AI summary

A technology for controlling an access of a trie by managing node access permissions of processes that access a trie data structure and perform an operation is disclosed. Example embodiments include accessing a window initiating node in a trie, determining whether a next node is an anchor node while visiting lower nodes of the window initiating node in a predetermined traversal order, locking the next node when the next node is an anchor node, releasing a lock of the window initiating node when the window initiating node is an anchor node, and setting the next node as the window initiating node.