Latch-Free Concurrent Tree Search Validation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional relational databases face delays in response times due to waiting for processes to finish modifying nodes, and attempts to avoid latches by creating modified copies can lead to garbage data and slower performance.

Innovation Solution

Implementing latch-free, concurrent searching by ignoring latches during initial traversals and validating leaf nodes to ensure data integrity, allowing processes to perform in-place modifications while searching, and retreading the search if validation fails.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If latches are used to prevent concurrent modification during reading, then data integrity is ensured, but query response time is delayed

Engineering Contradiction:
Improvedata integrityVSAvoidquery response time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts the latching mechanism from the search operation itself, allowing searches to proceed without acquiring latches on intermediate nodes. Instead, latches are only taken on leaf nodes during validation, separating the read operation from the protection mechanism and eliminating unnecessary waiting time while preserving data integrity where needed.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent performs preliminary validation of leaf nodes using validation keys before committing to search results. This preliminary action checks whether the leaf node is still valid without requiring latches during the traversal, allowing the search to proceed concurrently with modifications while ensuring integrity at the critical validation point.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If in-place modifications are performed during concurrent search, then query response time is improved, but data integrity may be compromised

Engineering Contradiction:
Improvequery throughputVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent introduces validation keys as intermediaries between the search operation and the leaf node data. These validation keys allow the search to verify leaf node integrity without requiring latches, enabling in-place modifications to proceed concurrently while maintaining data integrity through the intermediary validation mechanism.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent implements a feedback mechanism where leaf nodes are validated after traversal by checking validation keys. If validation fails, the search backtracks and retries, providing feedback that ensures data integrity is maintained even when in-place modifications occur during the search process.

Inventive Principle:
Principle #23Feedback

3Reliability

If modified copies of nodes are created instead of in-place modifications, then data integrity is maintained, but garbage data accumulates and performance decreases

Engineering Contradiction:
Improvedata integrityVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts only the critical validation information (validation keys) from the leaf node structure, allowing the rest of the node to be modified in-place without creating copies. This selective extraction maintains data integrity for validation purposes while permitting efficient in-place modifications for the remaining data, avoiding garbage accumulation.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent creates copies only of the validation keys rather than entire leaf nodes, enabling efficient validation without the overhead of full node copying. This minimal copying approach maintains integrity where needed while avoiding the performance penalty of creating and managing full node copies.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10360206B2Latch-free concurrent searching
Publication Date: 2019.07.23 HEWLETT PACKARD ENTERPRISE DEV LP
  • US10360206B2 patent drawing
  • US10360206B2 patent drawing
  • US10360206B2 patent drawing

AI summary

Systems and methods associated with latch-free searching are disclosed. One example method includes receiving a key identifying data to be retrieved from a tree-based data structure. The method also includes performing a concurrent, latch-free search of the tree-based data structure until a leaf node is reached. The method also includes validating the leaf node. The method also includes retreading a portion of the search if the leaf node fails validation.