SSD Cache Driver for HDD Storage Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The challenge is to enhance the access speed and efficiency of data storage systems by combining high-speed, expensive flash memory (SSD) with low-speed, inexpensive hard disk drives (HDD) without significantly increasing manufacturing costs, while ensuring efficient data transfer between the two.
Innovation Solution
Implementing an information processing apparatus with a driver that uses SSD as a cache for HDD, managing data in units of blocks and employing techniques like write-through and write-back modes, sector bit maps, and nonvolatile operations to optimize data transfer and storage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If SSD is used as cache for HDD, then access speed is improved, but device complexity increases
Solution Approach 1:
The patent divides the storage system into two distinct segments: SSD used as cache for high-speed data access and HDD used as primary storage for large-capacity data holding. The driver software further segments data management into cache management (for SSD) and file system management (for HDD), allowing each component to operate independently at its optimal level while resolving the complexity through functional separation.
Solution Approach 2:
The patent introduces a driver as an intermediary layer between the host system and the storage devices. This driver manages the SSD-HDD cache system by handling data transfer protocols, cache allocation, and consistency maintenance, thereby simplifying the overall system complexity while enabling high-speed access through the SSD cache layer.
2Productivity
If SSD is used as cache for HDD, then productivity is improved, but manufacturing cost increases
Solution Approach 1:
The patent applies local quality by using SSD only for the cache function where high speed is critical, rather than replacing the entire storage system. The SSD handles frequently accessed data blocks, while the HDD stores the bulk data. This selective application of high-performance storage only where needed improves productivity while controlling manufacturing costs.
Solution Approach 2:
The patent implements partial action by using a portion of the SSD capacity as cache rather than utilizing the full SSD for primary storage. This allows the system to achieve high-speed access for active data while maintaining cost-effectiveness by combining a smaller, faster SSD with a larger, slower HDD, optimizing both productivity and manufacturing cost.
3Speed
If data is transferred between SSD and HDD, then access speed is improved, but loss of time increases due to data consistency management
Solution Approach 1:
The patent implements preliminary action by pre-managing data consistency through metadata tracking and block allocation tables maintained by the driver. Before data transfer operations, the system prepares cache allocation and consistency protocols, reducing the time penalty during actual data operations. Write operations are buffered and consolidated, preventing frequent small transfers that would increase time loss.
Solution Approach 2:
The patent ensures continuity of useful action by maintaining persistent cache data in the SSD that remains valid across system operations. The driver manages data consistency through continuous background processes that update metadata and track block states, allowing data to be served from the SSD cache without repeated consistency checks, thereby minimizing time loss while maintaining access speed.
Data Source
AI summary
According to one embodiment, an information processing apparatus includes a memory includes a buffer area, a first storage, a second storage and a driver. The buffer area is reserved in order to transfer data between the driver and a host system that requests for data writing and data reading. The driver is configured to write data into the second storage and read data from the second storage in units of predetermined blocks using the first storage as a cache for the second storage. The driver is further configured to reserve a cache area in the memory, between the buffer area and the first external storage, and between the buffer area and the second storage. The driver is further configured to manage the cache area in units of the predetermined blocks.


