Unified Value Side Table for Sequence Number Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage systems face challenges in efficiently tracking and managing massive amounts of sequence numbers, particularly in distributed environments, where coherency and scalability are critical, and there is a need for a solution that can handle both valid and invalidated sequence numbers effectively to ensure data integrity and expandability.

Innovation Solution

A method utilizing a value side table as a key-value store in memory, where sequence numbers are used as keys to represent both valid and invalidated sequences, allowing for efficient addition and deletion of sequence ranges, thereby eliminating the need for separate data structures for sequence tracking and invalidation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If separate data structures are used for tracking valid sequence numbers and invalidated sequence numbers, then sequence number tracking can be performed, but memory consumption and processing bandwidth increase significantly

Engineering Contradiction:
Improvesequence number tracking accuracyVSAvoidmemory consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent combines separate data structures for tracking valid and invalidated sequence numbers into a single unified value side table. This table stores sequence numbers as keys with boolean values indicating validity status, eliminating the need for multiple separate structures and reducing overall memory consumption while maintaining tracking accuracy.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The value side table serves multiple functions simultaneously: it tracks both valid and invalidated sequence numbers, provides coherency across distributed systems, and enables efficient range-based operations. This multi-functional approach reduces the total metadata infrastructure needed while maintaining all necessary tracking capabilities.

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

2Reliability

If separate data structures are used for sequence tracking and invalidation, then comprehensive sequence management is achieved, but device complexity increases

Engineering Contradiction:
Improvesequence management completenessVSAvoidmetadata handling complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges multiple metadata handling mechanisms into a single value side table structure that manages both valid and invalidated sequence numbers. This unification simplifies the overall system architecture by eliminating the need for separate tracking structures and reducing the complexity of coordinating between multiple data structures.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The value side table is designed to handle multiple sequence management operations within a single structure, including tracking valid sequences, recording invalidations, maintaining coherency across distributed systems, and supporting range-based operations. This multi-functional design reduces device complexity by consolidating what would otherwise require multiple specialized components.

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

3Reliability

If traditional sequence number tracking methods are used in distributed storage systems, then sequence numbers can be tracked, but coherency across the system becomes difficult to maintain

Engineering Contradiction:
Improvesequence number trackingVSAvoidsequence number coherency
Core Design Contradiction:
ReliabilityVSStability of the object's composition

Solution Approach 1:

The value side table serves as a universal metadata structure across distributed storage systems that maintains sequence number coherency. By using a consistent key-value format with sequence numbers as keys and validity booleans as values, the system ensures that all distributed components reference the same sequence state, maintaining coherency across the distributed architecture.

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

4Reliability

If massive amounts of sequence numbers are tracked individually, then complete sequence tracking is achieved, but processing bandwidth is consumed excessively

Engineering Contradiction:
Improvesequence tracking completenessVSAvoidprocessing bandwidth consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent segments the sequence number space into manageable key-value pairs in the value side table, where sequence numbers serve as keys and validity status as values. This segmentation allows for efficient indexing and retrieval operations, reducing processing bandwidth consumption compared to maintaining individual records for each sequence number with full metadata.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11449485B1Sequence invalidation consolidation in a storage system
Publication Date: 2022.09.20 PURE STORAGE INC
  • US11449485B1 patent drawing
  • US11449485B1 patent drawing
  • US11449485B1 patent drawing

AI summary

A method for tracking valid and invalid sequence numbers in a storage system, performed by a processor, is provided. The method includes establishing a table as a key value store in memory in the storage system. The table has sequence numbers as keys and represents valid sequence numbers and invalidated sequence numbers of an open-ended sequence relating to storage of data or metadata in the storage system. The method includes adding to the table an entry that records a first plurality of consecutive sequence numbers, as a first range-valued key associated with a first value indicating the first plurality of consecutive sequence numbers is valid. The method includes adding to the table an entry that records a deletion of a second plurality of consecutive sequence numbers, as a second range-valued key associated with a second value indicating the second plurality of consecutive sequence numbers is invalid.