Heterogeneous Redundant Storage Array with SSD-HDD Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional RAID systems lack protection against simultaneous failures of multiple disks, have reduced capacity due to redundancy, and do not differentiate between data disks for optimal data distribution, which is inadequate with advancements in flash memory technology.
Innovation Solution
Implementing heterogeneous replication schemes with multiple classes of data disks and per-class pluggable data access mechanisms to support disaster recovery, quality of service, and improved data access performance, allowing for the use of faster, more expensive disks for specific data types and leveraging existing RAID schemes like RAID-1, RAID-5, and RAID-6.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional RAID replication schemes are used, then data redundancy is provided, but protection against simultaneous failure of multiple disks is not achieved
Solution Approach 1:
The patent segments the storage system into multiple storage devices with different performance characteristics (fast SSDs and slower HDDs). Data is divided into chunks and distributed across these segmented storage devices using heterogeneous replication schemes, allowing simultaneous failure protection while maintaining manageable complexity through structured segmentation.
Solution Approach 2:
The patent employs composite storage architecture combining different types of storage devices (SSD and HDD) into a unified RAID system. This composite approach leverages the speed of SSDs for critical data chunks and the capacity of HDDs for other data, achieving enhanced reliability against multiple disk failures while balancing system complexity through complementary device characteristics.
2Reliability
If redundancy is configured in conventional RAID, then data protection is improved, but total capacity of the data volume is reduced
Solution Approach 1:
The patent applies local quality by implementing different replication factors for different data chunks based on their importance and access patterns. Critical data chunks stored on faster SSDs may use higher replication factors for enhanced protection, while less critical data on HDDs uses lower replication factors, optimizing the balance between data protection and total usable capacity across different storage locations.
3Productivity
If uniform data distribution is used across all data disks, then simplicity is maintained, but optimal data access performance with heterogeneous storage devices is not achieved
Solution Approach 1:
The patent implements local quality by tailoring data distribution strategies to the specific characteristics of each storage device. Fast SSDs receive data chunks requiring high access performance with appropriate replication, while slower HDDs receive other data chunks with optimized distribution patterns. This localized optimization of data placement and access patterns significantly improves overall system productivity while managing complexity through device-specific strategies.
4Productivity
If faster storage devices like SSD are used, then I/O performance is improved, but cost increases
Solution Approach 1:
The patent applies local quality by placing only the most performance-critical data chunks on fast SSDs, while storing other data on more economical HDDs. This localized high-performance storage approach ensures that I/O performance is improved only where absolutely necessary, optimizing the trade-off between productivity and storage cost by matching storage device speed to data access requirements rather than uniformly deploying expensive fast storage across the entire system.
Data Source
AI summary
A method and system is disclosed for providing fault tolerant data storage with built-in backup capabilities, improved I/O performance, and improved utilization of storage devices. A method for writing data includes receiving request to write a logical block of data to a heterogeneous data volume comprising plurality of storage devices (disks), determining number of copies of the logical block to store and associated classes of disks within the data volume to be used with each copy, processing each copy of the logical block in accordance with properties associated with the corresponding classes of disks within the data volume, determining replication schemes used in the data volume and associated with the specified classes of disks, segmenting the logical block into data blocks and generating additional parity blocks in accordance with the replication schemes, selecting data writing mechanisms in accordance with the classes of disks and using those mechanisms to write the data and parity blocks to the data volume.


