Virtual Storage Block Parallel Data Writing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data access methods in storage systems face performance degradation due to low IO speeds and the need for serialization in multi-user, multi-threaded environments, which can lead to increased management overhead and potential deadlocks.

Innovation Solution

The introduction of virtual storage blocks allows for parallel data transfers by temporarily writing data to a virtual block when the target storage block is unavailable, with data being copied to the actual block once it becomes available, thereby optimizing data writing performance and avoiding deadlocks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is written directly to storage blocks, then data integrity is ensured, but writing performance deteriorates due to serialization requirements and low IO speed

Engineering Contradiction:
Improvedata writing performanceVSAvoiddata copy time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by writing data to a virtual storage block before the target storage block is available. This allows the data transfer to begin in advance, and once the storage block becomes available, the data is copied from the virtual block to the actual block, thereby reducing the overall data copy time and improving writing performance.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the unit of disk management is decreased to reduce conflict, then the chance of request conflict is reduced, but management overhead and consumption increase greatly

Engineering Contradiction:
Improveparallel data transfer capabilityVSAvoidstorage device management overhead
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a virtual storage block as an intermediary between the data source and the target storage block. This intermediary allows multiple write operations to proceed in parallel without directly conflicting for the same storage resources. The virtual block acts as a buffer that decouples the parallel write operations from the serialized access to actual storage blocks, thereby enabling parallel data transfers while avoiding the need to decrease disk management units and the associated management overhead.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If locks are used to control serialization in multi-user operations, then data consistency is maintained, but system performance degrades due to serialization overhead

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the storage block into a virtual storage block and the actual storage block. This segmentation allows the system to maintain locks on the actual storage blocks for data consistency while enabling parallel operations on virtual storage blocks. By separating the virtual representation from the physical storage, the system can process multiple write requests concurrently at the virtual level, then serialize access only when copying to actual blocks, thereby maintaining data consistency while improving overall system performance.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11048414B2Method and apparatus for managing data access
Publication Date: 2021.06.29 EMC IP HLDG CO LLC
  • US11048414B2 patent drawing
  • US11048414B2 patent drawing
  • US11048414B2 patent drawing

AI summary

A method and apparatus for managing data access comprises: receiving a write request for writing data into one or more storage blocks; in response to determining that a storage block is unavailable, writing a part of the data into a virtual storage block corresponding to the storage block, the part of the data being required to be written into the storage block; and in response to determining that the storage block becomes available, copying the part of the data from the virtual storage block to the storage block. The embodiments of the present disclosure further disclose a corresponding apparatus. By introducing the virtual storage blocks in the data access, the embodiments of the present disclosure can realize the parallel data transfers of a plurality of writes and thus greatly improve the data writing performance of the system.