RAID Library Boot Configuration for Storage Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage systems face challenges in booting processes due to the lack of efficient methods for reading configuration and state information from RAID groups, particularly during system initialization when the runtime I/O stack and object model are not fully loaded.

Innovation Solution

A method involving reading a first set of configuration and state information from a RAID group using a RAID library API call, which creates and initializes structures specifying the RAID geometry and I/O operations, allowing for the instantiation of system objects and subsequent reading of client data storage information using an I/O runtime stack based on object topology.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional booting methods are used that require fully loaded runtime I/O stack and object model, then system initialization can access complete storage management functionality, but system boot fails or is delayed because these components are not yet available during early initialization

Engineering Contradiction:
Improvesystem boot reliabilityVSAvoidboot process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the storage system initialization into distinct phases: a minimal initialization phase that reads configuration from RAID groups using direct hardware access, and a subsequent phase where the full runtime I/O stack and object model are loaded. This segmentation allows the system to boot without requiring the complete software stack to be available at startup.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by reading and processing RAID group configuration information directly during hardware initialization, before the runtime I/O stack is loaded. Configuration data is retrieved and stored in memory in advance, enabling the system to proceed with booting without waiting for higher-level software components.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If configuration information is read using direct RAID library API calls during boot, then system initialization can access storage configuration without full software stack, but the method requires low-level access mechanisms that increase implementation complexity

Engineering Contradiction:
Improveconfiguration access easeVSAvoidinitialization mechanism complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent creates a universal initialization interface that can read RAID group configuration information using the same RAID library API calls employed during normal runtime operations. This multi-functional approach allows the same code path to serve both boot-time initialization and runtime configuration access, reducing the need for separate low-level access mechanisms.

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

3Reliability

If the system waits for runtime I/O stack and object model to be fully loaded before accessing storage configuration, then complete storage management functionality is available, but system boot time increases significantly

Engineering Contradiction:
Improvestorage management functionalityVSAvoidboot time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary reading of RAID group configuration information during the hardware initialization phase, before the runtime I/O stack is loaded. By retrieving and storing configuration data in advance, the system eliminates the need to wait for the complete software stack to be available, significantly reducing boot time while ensuring storage management functionality is properly initialized.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a dynamic initialization process where the system adapts its operation mode based on the loading state of software components. During early boot, it uses direct RAID library API calls for configuration access, and transitions to using the full runtime I/O stack and object model once they are loaded, optimizing both boot speed and functional completeness.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9244632B1Data storage system configuration
Publication Date: 2016.01.26 EMC IP HLDG CO LLC
  • US9244632B1 patent drawing
  • US9244632B1 patent drawing
  • US9244632B1 patent drawing

AI summary

Described are techniques for booting a data storage system. A first set of configuration and state information is read from first storage devices of a first RAID group using special processing code and a RAID library. A first set of system objects (of a system object topology) are instantiated using the first set of information. The first set of system objects represent storage entities containing a second set of configuration and state information. Using an I/O runtime stack based on the system object topology, the second set of information is read from second storage devices of a second RAID group using the same RAID library having calls made from method(s) of a RAID group object representing the second RAID group. A second set of client objects, instantiated using the second set of information, represent storage entities including client data stored on third storage devices of a third RAID group.