Storage Request Coordination via Claim-Then-Execute Protocol

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In a multi-processor, multi-thread environment, traditional data storage systems face inefficiencies due to the need for sequential processing of storage requests, which can lead to lengthy processing times and reduced performance, especially when multiple processors or threads need to access a common data storage device.

Innovation Solution

An apparatus and method that coordinates storage requests using modules such as an append/invalidate module and a restructure module, allowing for the interleaving of processing steps across multiple processors or threads, ensuring proper update order and enabling parallel execution of storage requests, even when they relate to a common file or object.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional file servers sequentially process storage requests to ensure data integrity, then data consistency is maintained, but processing time increases and productivity decreases

Engineering Contradiction:
Improvedata consistencyVSAvoidprocessing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent divides the storage request processing into separate phases: a claim phase where processors claim metadata blocks, and an execute phase where actual storage operations occur. This segmentation allows multiple processors to proceed in parallel without interfering with each other, resolving the contradiction between sequential processing requirements for data consistency and parallel processing needs for productivity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary claim actions where processors must claim metadata blocks before executing storage operations. This preliminary action ensures that each processor has exclusive access to the metadata it needs, allowing subsequent parallel execution of storage operations while maintaining data consistency through the claim-then-execute protocol.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If storage requests are processed sequentially to maintain proper update order, then data integrity is preserved, but processing time increases

Engineering Contradiction:
Improveupdate order integrityVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the storage operation into claim and execute phases, allowing multiple processors to claim metadata blocks in parallel while maintaining update order integrity through the structured claim-then-execute protocol. This eliminates the need for sequential processing while preserving data integrity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces metadata blocks as intermediary structures that mediate between multiple processors. Processors claim these metadata blocks to coordinate access, and the metadata structure itself enforces proper update ordering during the execute phase, allowing parallel processing while maintaining integrity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If multiple processors access common data simultaneously, then productivity increases through parallel processing, but coordination complexity increases

Engineering Contradiction:
Improveparallel processing capabilityVSAvoidcoordination mechanism complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the coordination mechanism into simple claim and execute phases, avoiding complex coordination protocols. Each processor independently claims metadata blocks and executes operations in parallel, with the system automatically managing conflicts through the phased approach, thus reducing coordination complexity while enabling parallel processing.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements self-service coordination where processors automatically manage their own access to shared data by claiming metadata blocks and executing operations independently. The system handles conflict resolution automatically through the claim-then-execute protocol, eliminating the need for complex external coordination mechanisms.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9170754B2Apparatus, system, and method for coordinating storage requests in a multi-processor/multi-thread environment
Publication Date: 2015.10.27 SANDISK TECHNOLOGIES LLC
  • US9170754B2 patent drawing
  • US9170754B2 patent drawing
  • US9170754B2 patent drawing

AI summary

An apparatus, system, and method are disclosed for coordinating storage requests in a multi-processor/multi-thread environment. An append/invalidate module generates a first append data storage command from a first storage request and a second append data storage command from a second storage request. The storage requests overwrite existing data with first and second data including where the first and second data have at least a portion of overlapping data. The second storage request is received after the first storage request. The append/invalidate module updates an index by marking data being overwritten as invalid. A restructure module updates the index based on the first data and updates the index based on the second data. The updated index is organized to indicate that the second data is more current than the first data regardless of processing order. The modules prevent access to the index until the modules have completed updating the index.