Access-Node Block Storage With Inline Erasure Coding

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current persistent storage solutions in large data centers face challenges with data reduction techniques like erasure coding being computationally intensive and difficult to scale, especially for small data blocks, leading to inefficiencies in flash memory storage and high costs.

Innovation Solution

The implementation of a Durable Block Device (DBD) with inline erasure coding, where access nodes configure and manage storage volumes to perform erasure coding in real-time, reducing computational overhead and optimizing storage efficiency by aggregating data blocks into larger chunks for storage across multiple devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data reduction techniques like erasure coding are implemented for persistent storage, then storage efficiency and redundancy are improved, but computational overhead increases and scalability deteriorates

Engineering Contradiction:
Improvestorage efficiencyVSAvoidcomputational throughput
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The system segments data into fixed-size blocks and processes them independently through the log structured volume. Each block can be erasure coded and stored separately, allowing parallel processing and improving computational throughput while maintaining storage efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces access nodes as intermediary devices between servers and storage devices. These access nodes perform erasure coding operations, transferring the computational burden from servers to specialized access nodes, thereby improving server productivity while maintaining data redundancy.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Quantity of substance

If erasure coding is performed on small data blocks, then storage efficiency is improved, but processing time and latency increase

Engineering Contradiction:
Improvestorage efficiencyVSAvoidprocessing latency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-processing data blocks and organizing them in a log structured volume before final storage. Data blocks are aggregated and prepared in advance, reducing the processing time required during actual write operations while maintaining efficient storage utilization.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The log structured volume enables continuous data flow and processing without interruption. Data blocks are continuously aggregated, erasure coded, and written to storage in a streamlined manner, minimizing idle time and reducing overall processing latency while maintaining storage efficiency.

Inventive Principle:
Principle #20Continuity of useful action

3Reliability

If durable block devices with redundancy are implemented, then data reliability is improved, but device complexity and cost increase

Engineering Contradiction:
Improvedata durabilityVSAvoidstorage system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The access nodes serve multiple functions including data reception, erasure coding, and storage management. This multi-functionality reduces the need for separate specialized components, simplifying the overall storage system architecture while maintaining data durability through erasure coding redundancy.

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

Solution Approach 2:

The system allows flexible configuration of erasure coding parameters such as data block size, redundancy factor, and chunk size. By optimizing these parameters based on specific workload requirements, the system achieves data durability with minimized complexity and cost for different application scenarios.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10949303B2Durable block storage in data center access nodes with inline erasure coding
Publication Date: 2021.03.16 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10949303B2 patent drawing
  • US10949303B2 patent drawing
  • US10949303B2 patent drawing

AI summary

Techniques are described in which network devices, such as one or more data center access nodes, are configured to support durable block storage with inline erasure coding, i.e., erasure coding in real time as data is updated. A Durable Block Device (DBD) supports a block level API for one or more storage volumes that may be mapped to one or more applications executed by servers in communication with the data center access nodes. The disclosure describes the operation of the data plane of the DBD that is hosted on one or more access nodes, and its interactions with the management and control planes of the DBD that are hosted on one or more of the servers. The disclosure describes generation of a log structured volume in the DBD configured to gather multiple data blocks into larger chunks of data for inline erasure coding for storage across multiple storage devices.