Clustered RAID Assimilation via Distributed Metadata

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In clustered storage systems, RAID label consistency issues arise when multiple nodes attempt to manage storage devices, leading to incorrect designation of RAID groups as degraded due to inconsistent generation counts and difficulties in tracking the status of storage devices, especially when devices go offline and return as spares.

Innovation Solution

Storing RAID-related metadata in a distributed cluster database separate from storage devices, allowing nodes to access RAID configuration information independently of RAID labels, ensuring consistency and durability through a quorum of active nodes, and eliminating the notion of ownership per storage device in favor of ownership per storage container.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If RAID labels are stored on storage devices with generation counts, then RAID group configuration can be tracked, but inconsistency arises when multiple nodes access and update the same storage devices, leading to incorrect degraded status designation

Engineering Contradiction:
ImproveRAID group status accuracyVSAvoidRAID label management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a cluster database as an intermediary between multiple nodes and storage devices. Instead of nodes directly reading and writing RAID labels on storage devices, they access a centralized cluster database that maintains consistent RAID configuration information. This mediator resolves the inconsistency problem by providing a single source of truth that all nodes can access without conflicting with each other's operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates a copy of RAID configuration information from the storage device RAID labels into a cluster database. This copy serves as the authoritative source for all nodes in the cluster, eliminating the need for nodes to directly interact with and potentially conflict over the original RAID labels on storage devices.

Inventive Principle:
Principle #26Copying

2Ease of operation

If ownership of storage devices is maintained per node, then exclusive access control is achieved, but failover and node replacement become problematic when nodes need to assume ownership of storage devices

Engineering Contradiction:
ImproveOwnership transfer during failoverVSAvoidRAID label consistency
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The cluster database acts as an intermediary that manages ownership information independently of physical storage device ownership. When failover occurs, the cluster database can update ownership records to reflect the new owning node without requiring direct access to or modification of the storage device RAID labels, thus maintaining consistency while enabling smooth ownership transfer.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If RAID labels are updated on all storage devices when a device fails, then the failed device is properly excluded from the RAID group, but the failed device cannot be recovered as a spare when it comes back online due to generation count mismatch

Engineering Contradiction:
ImproveFailed device exclusion accuracyVSAvoidFailed device recovery as spare
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent maintains a copy of the RAID configuration state in the cluster database that is independent of the generation counts on individual storage devices. When a failed device returns online, the cluster database can recognize it and allow it to be recovered as a spare based on the centralized configuration state, rather than rejecting it due to generation count mismatches that would occur if relying solely on the distributed RAID labels.

Inventive Principle:
Principle #26Copying

4Productivity

If multiple nodes can access storage devices simultaneously, then high availability and load balancing are achieved, but RAID label consistency problems arise when nodes increment generation counts differently

Engineering Contradiction:
ImproveCluster throughput and availabilityVSAvoidRAID label version consistency
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The cluster database serves as a centralized intermediary that all nodes access for RAID configuration information. This eliminates the distributed version control problem where multiple nodes independently increment generation counts on the same RAID labels. The cluster database provides a single authoritative version that all nodes read, ensuring consistency while allowing multiple nodes to simultaneously service I/O requests and access storage devices.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9619351B2Clustered RAID assimilation management
Publication Date: 2017.04.11 NETAPP INC
  • US9619351B2 patent drawing
  • US9619351B2 patent drawing
  • US9619351B2 patent drawing

AI summary

In one embodiment, a node of a cluster is coupled to a storage array of storage devices. The node executes a storage input/output (I/O) stack having a redundant array of independent disks (RAID) layer that organizes the storage devices within the storage array as a plurality of RAID groups. Configuration information is stored as a cluster database. The configuration information identifies the RAID groups associated with the storage devices. Each RAID group is associated with a plurality of segments and each segment has a different RAID configuration.