Storage Controller Data Band Mapping for SSD HDD Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Hybrid storage systems that combine Solid State Drives (SSDs) and Hard Disk Drives (HDDs) face challenges in optimizing data location based on access patterns, as existing methods do not efficiently manage data distribution across different storage media with varying performance characteristics, especially under limited DRAM resources and high I/O demands.
Innovation Solution
A storage system with redundancy groups and data bands, where a storage controller maps client data addresses onto physical memory spaces, allowing for the swapping of data bands between SSD and HDD redundancy groups based on access needs, optimizing data location transparently to client applications, and dynamically updating the mapping to balance data access performance and retention.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If data is stored on HDDs to reduce cost and increase capacity, then storage cost and capacity are improved, but data access performance deteriorates
Solution Approach 1:
The system dynamically relocates data between SSD and HDD storage media based on access patterns. The storage controller monitors data access frequency and automatically migrates frequently accessed data to SSDs while moving less frequently accessed data to HDDs, making the storage system adaptive rather than static
Solution Approach 2:
Different storage media (SSD and HDD) are assigned to different data based on access requirements. Hot data (frequently accessed) is stored on high-performance SSDs, while cold data (less frequently accessed) is stored on high-capacity HDDs, optimizing the local characteristics of each storage location
2Speed
If data is cached in DRAM to improve access speed, then data access performance is improved, but memory resource consumption increases
Solution Approach 1:
Instead of caching entire data blocks in DRAM, the system creates and maintains a mapping table that records the correspondence between logical addresses and physical locations on SSDs and HDDs. This mapping structure allows the system to access data locations quickly without duplicating the actual data in memory
Solution Approach 2:
The storage controller acts as an intermediary between the host system and the storage media, maintaining a mapping structure that translates logical addresses to physical locations. This intermediary layer enables efficient data location without requiring large amounts of DRAM for caching
3Speed
If data is frequently migrated between SSD and HDD to optimize access patterns, then data access performance is improved, but system complexity increases
Solution Approach 1:
The system merges the management of SSD and HDD storage media into a unified storage pool with a single mapping structure. The storage controller manages both types of storage media simultaneously, consolidating the complexity into a single management layer rather than requiring separate management systems for each media type
4Reliability
If redundancy groups are created to improve reliability, then system reliability is improved, but storage efficiency deteriorates
Solution Approach 1:
The mapping structure serves multiple functions simultaneously: it manages data placement across redundancy groups, tracks data access patterns for migration decisions, and enables efficient data location retrieval. This multi-functional approach eliminates the need for separate management mechanisms
Data Source
AI summary
A method for optimizing locations of physical data accessed by one or more client applications interacting with a storage system, with the storage system comprising at least two redundancy groups having physical memory spaces and data bands. Each of the data bands corresponds to physical data stored on several of the physical memory spaces. A virtualized logical address space includes client data addresses utilizable by the one or more client applications. A storage controller is configured to map the client data addresses onto the data bands, such that a mapping is obtained, wherein the one or more client applications can access physical data corresponding to the data bands.


