Heterogeneous Storage Arrays Data Striping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Solid-state drives are often designed to conform to hard disk drive standards, limiting their ability to leverage unique features of flash and other solid-state memories, such as data partitioning and enhanced storage capabilities.
Innovation Solution
A storage cluster architecture that includes multiple storage nodes configured to assign data to logical arrays and perform data striping across these nodes, utilizing erasure coding and redundant metadata for data protection and reconstruction, allowing for proactive data rebuilding and independent operation of storage nodes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If solid-state drives are designed to conform to hard disk drive standards, then compatibility is improved, but the ability to leverage unique features of flash memory such as data partitioning is limited
Solution Approach 1:
The storage system is divided into multiple independent storage nodes that can be organized into different logical arrays. Each storage node operates semi-independently, allowing the system to partition data across multiple logical arrays while maintaining compatibility with standard storage protocols. This segmentation enables flash memory's unique features to be leveraged without requiring a complete architectural overhaul.
Solution Approach 2:
The patent introduces a new dimensional organization by creating logical arrays that are separate from physical storage nodes. This additional layer of abstraction allows data to be distributed across multiple logical arrays while physically residing on standard storage nodes, enabling flash memory features like partitioning without changing the underlying hardware interface.
2Reliability
If data is striped across multiple storage nodes, then storage efficiency and recovery capability are improved, but system complexity increases
Solution Approach 1:
Each storage node maintains its own metadata and can operate semi-independently, performing self-service functions for data management. When data needs to be recovered or redistributed, the system uses erasure coding to reconstruct data from available nodes without requiring complex centralized coordination, reducing the overall system complexity while maintaining high reliability.
Solution Approach 2:
The system implements erasure coding that distributes data and parity information across multiple storage nodes beforehand. This pre-distribution of redundant information ensures that data can be recovered even if some nodes fail, providing built-in fault tolerance without requiring complex real-time recovery mechanisms.
3Adaptability or versatility
If multiple logical arrays are created in storage nodes, then data organization and independence are improved, but management complexity increases
Solution Approach 1:
The storage system is divided into multiple logical arrays, each of which can be independently managed and configured. Each logical array can be assigned to specific storage nodes and can have its own data striping configuration, allowing flexible data organization while maintaining simple management through standardized interfaces.
Solution Approach 2:
The storage nodes are designed to be universal and can serve multiple logical arrays simultaneously. Each storage node can participate in different logical arrays with different configurations, providing multi-functionality that simplifies management by using the same hardware platform for diverse storage needs.
Data Source
AI summary
A storage cluster is provided. The storage cluster includes a plurality of storage nodes coupled together as the storage cluster. The plurality of storage nodes is configured to assign data to two or more logical arrays and the plurality of storage nodes is configured to establish data striping across the plurality of storage nodes for user data of each of the two or more logical arrays.


