Filesystem Metadata Resiliency via Segmented Storage Volumes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional data storage systems, such as RAID-6, are computationally intensive and may experience long recovery times in the event of metadata errors, leading to system downtime, while mechanisms like metadata duplication and checksums degrade performance and require frequent stripe updates.

Innovation Solution

Storing data and metadata separately and applying a double-fault tolerant data redundancy scheme, such as triple mirroring or RAID-6, to the metadata, reduces the number of stripe update operations and maintains high performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If metadata duplication and checksums are implemented to protect against metadata errors, then reliability is improved, but system performance deteriorates due to degraded performance and frequent stripe updates

Engineering Contradiction:
Improvemetadata error protectionVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent separates metadata storage from data storage by creating distinct logical volumes. Metadata is stored on a dedicated metadata logical volume while data is stored on data logical volumes. This segmentation allows independent management and protection strategies for metadata versus data, enabling targeted fault tolerance without affecting overall system performance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts metadata from the data storage structure and places it on separate logical volumes. This extraction allows metadata to be protected with double-fault tolerant schemes independently, while data can use simpler single-fault tolerant schemes, reducing the overhead of metadata protection operations on data I/O performance.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If RAID-6 is used to protect against drive failures and corruption, then reliability is improved, but computational intensity increases and recovery times lengthen

Engineering Contradiction:
Improvedrive failure protectionVSAvoidrecovery time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies different RAID levels to different parts of the storage system based on their specific requirements. Metadata logical volumes use RAID-6 or triple mirroring for maximum protection against corruption, while data logical volumes can use more performance-optimized RAID configurations. This local differentiation optimizes both reliability and performance for each component's specific needs.

Inventive Principle:
Principle #3Local quality

3Device complexity

If metadata and data are stored together on the same RAID stripes, then device complexity is reduced, but the number of stripe update operations increases when metadata is updated

Engineering Contradiction:
Improvestorage structureVSAvoidstripe update operations
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments the storage system into distinct metadata logical volumes and data logical volumes. This segmentation allows metadata updates to be performed independently without requiring stripe updates across data volumes, significantly reducing the number of I/O operations needed for metadata modifications while maintaining clear organizational structure.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10678641B2Techniques for optimizing metadata resiliency and performance
Publication Date: 2020.06.09 EMC IP HLDG CO LLC
  • US10678641B2 patent drawing
  • US10678641B2 patent drawing
  • US10678641B2 patent drawing

AI summary

A method of protecting a filesystem against metadata corruption while maintaining high performance is provided. The method includes (a) receiving a storage command directing a computing device to store a block of file data to the filesystem and (b) in response: (1) writing the block to a data portion spanning a set of drives using a single-fault tolerant level of RAID, wherein writing the block includes performing exactly two write operations to the set of drives; and (2) writing filesystem metadata associated with the block to a metadata portion spanning a subset of the set of drives using a double-fault tolerant data redundancy scheme different than the single-fault tolerant level of RAID, the subset including at least three drives, the data and metadata portions being non-overlapping, wherein writing the metadata includes performing at least three write operations to the subset of the set of drives.