Composite Object Configuration Tree for Distributed Storage Write Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed storage systems employing erasure coding face inefficiencies in write operations due to high write amplification from partial stripe writes, which are exacerbated by the need for large amounts of NVRAM or complex management of log-structured file systems.

Innovation Solution

The system configures two types of objects for each erasure coded storage object: a capacity object on the capacity tier using an LFS layout and a metadata object on the performance tier using a mirroring scheme, allowing for coalesced full stripe writes and avoiding the complexities of log-structured metadata management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If erasure coding is used for fault tolerance, then storage overhead is reduced compared to mirroring, but write efficiency deteriorates due to high write amplification from partial stripe writes

Engineering Contradiction:
Improvestorage overheadVSAvoidwrite efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent segments the storage system into two distinct tiers: a performance tier using NVRAM for fast writes and a capacity tier using erasure-coded storage for efficient long-term storage. This segmentation allows each tier to be optimized for its specific function, resolving the contradiction between storage efficiency and write performance

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces NVRAM as an intermediary layer between the client and the erasure-coded storage. This intermediary buffers partial stripe writes, coalesces them into full stripe writes, and manages the write operations to the capacity tier, thereby eliminating the harmful write amplification effect while preserving the storage efficiency benefits of erasure coding

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If NVRAM is used to cache partial stripe writes, then write efficiency improves by enabling full stripe writes, but device cost increases due to the expense of NVRAM

Engineering Contradiction:
Improvewrite efficiencyVSAvoiddevice cost
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent changes the capacity parameter of the NVRAM device, using a smaller amount of NVRAM compared to traditional approaches. By optimizing the NVRAM size to match the stripe size of the erasure-coded storage, the system achieves full stripe write coalescing without requiring excessive NVRAM capacity, thus reducing cost while maintaining write efficiency

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent applies NVRAM selectively and locally - only for buffering write operations related to erasure-coded objects. The system uses local quality by dedicating NVRAM specifically for this purpose while using cheaper storage for other functions, optimizing the overall cost-performance ratio

Inventive Principle:
Principle #3Local quality

3Productivity

If log-structured file system is used to coalesce writes, then write efficiency improves through full stripe writes, but system complexity increases due to difficult metadata management

Engineering Contradiction:
Improvewrite efficiencyVSAvoidmetadata management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent extracts the write coalescing function from the file system layer and implements it directly in the storage controller. By taking out this function from the complex LFS metadata management context and placing it in the storage layer, the system achieves full stripe write coalescing without inheriting the metadata management complexities of log-structured file systems

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS11474719B1Combining the metadata and data address spaces of a distributed storage object via a composite object configuration tree
Publication Date: 2022.10.18 VMWARE INC
  • US11474719B1 patent drawing
  • US11474719B1 patent drawing
  • US11474719B1 patent drawing

AI summary

Techniques for combining the metadata and data address spaces of a distributed storage object are provided. In one set of embodiments, a distributed storage system can receive a request to provision a storage object. In response, the distributed storage system can create, in accordance with an erasure coding scheme, one or more capacity components for holding data of the storage object; create, in accordance with a mirroring scheme having an equivalent level of fault tolerance as the erasure coding scheme, one or more metadata components for holding metadata of the storage object; and create a composite object configuration tree for the storage object that includes first and second subtrees, where the first subtree comprises an indication of the mirroring scheme and references to the one or more metadata components, and where the second subtree comprises an indication of the erasure coding scheme and references to the one or more capacity components.