Erasure Coded Shard Write Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data storage systems face challenges in achieving optimal write latency while maintaining a predetermined level of data reliability, as existing methods are limited by the slowest storage device in a cluster, leading to delayed write completion and reduced performance.

Innovation Solution

Implementing an overprovisioned number of erasure coded shards, where additional shards beyond the threshold required for reliability are written, allowing faster devices to complete writes first and reducing overall latency without compromising data reliability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the minimum number of erasure coded shards required for data reliability is written, then data reliability is maintained, but write latency increases due to waiting for the slowest storage device

Engineering Contradiction:
Improvedata reliabilityVSAvoidwrite latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies partial action by writing only the minimum number of shards (k) required for data reconstruction, rather than writing all encoded shards (n). This allows the system to achieve the required reliability level without waiting for slower storage devices to complete writes of unnecessary shards, thereby reducing write latency while maintaining data reliability.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent changes the parameter of shard count from the fixed minimum (k) to an overprovisioned number (n) where n > k. By adjusting this parameter, the system can trade off between reliability and write latency, allowing faster devices to complete writes first and reducing overall write latency while maintaining the ability to reconstruct data from any k shards.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If all erasure coded shards are written to ensure data reliability, then data reliability is maximized, but write completion time increases

Engineering Contradiction:
Improvedata reliabilityVSAvoidwrite completion time
Core Design Contradiction:
ReliabilityVSDuration of action of moving object

Solution Approach 1:

The patent implements partial action by writing only k shards out of n total encoded shards, where k is the minimum required for data reconstruction. This partial writing approach reduces write completion time significantly while maintaining data reliability, as the system does not need to wait for all n shards to be written before considering the write operation complete.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent applies preliminary action by pre-calculating which k shards are sufficient for data reconstruction and prioritizing their write completion. The system can determine write completion as soon as k shards are successfully written, without waiting for the remaining n-k shards, thereby reducing write completion time while ensuring data reliability.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If the number of shards is increased to provide redundancy, then data reliability improves, but write latency increases due to additional write operations

Engineering Contradiction:
Improvedata reliabilityVSAvoidwrite latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies partial action by utilizing only the necessary portion of encoded shards (k out of n) for write completion determination. Although n > k provides enhanced redundancy and reliability, the system only waits for k shards to complete writing, thereby achieving high reliability without the full write latency penalty of writing all n shards.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent changes the shard configuration parameter from EC k/k (no redundancy) to EC k/n where n > k (with redundancy). This parameter change allows the system to achieve better data reliability through overprovisioning while controlling write latency by only requiring k shard completions rather than all n shards.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10528265B1Write latency reduction
Publication Date: 2020.01.07 WESTERN DIGITAL TECHNOLOGIES INC
  • US10528265B1 patent drawing
  • US10528265B1 patent drawing
  • US10528265B1 patent drawing

AI summary

A data storage system includes a plurality of Data Storage Devices (DSDs). A write command is sent to each DSD of the plurality of DSDs to each store one or more erasure coded shards of an overprovisioned number of shards. The overprovisioned number of shards is generated from an erasure coding on data to provide at least a predetermined level of data reliability. Write complete indications are received for a threshold number of shards less than the overprovisioned number of shards, with each write complete indication indicating that one or more shards of the overprovisioned number of shards has been stored in a DSD. It is determined that the data has been written with at least the predetermined level of data reliability after receiving write complete indications for the threshold number of shards, but before receiving write complete indications for all of the overprovisioned number of shards.