Layered Virtual Drive and Backend Storage for Direct Flash I/O
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage systems face inefficiencies in managing data operations and device management, particularly in flash storage systems, due to redundant processes performed by both higher and lower level controllers, leading to increased latency and reduced reliability.
Innovation Solution
Implementing a direct-mapped flash storage system where data blocks are addressed directly by the operating system without address translation by storage controllers, offloading device management responsibilities from storage drives, and utilizing non-volatile RAM for quick data buffering and power failure resilience.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If storage controllers perform address translation and device management, then data access is enabled, but latency increases and reliability decreases
Solution Approach 1:
The patent extracts device management responsibilities from the storage controller to the operating system. The storage controller is reduced to performing only basic data transfer functions, while the OS handles address translation, wear leveling, and garbage collection. This extraction eliminates the reliability issues caused by redundant controller management while maintaining data access functionality.
Solution Approach 2:
The patent inverts the traditional storage architecture by having the operating system perform functions typically done by storage controllers. Instead of the controller managing data blocks and address translation, the OS directly manages flash memory blocks and performs address mapping. This inversion resolves the contradiction by placing management responsibilities where they can be handled more reliably without adding latency.
2Productivity
If storage controllers perform device management, then data operations are enabled, but write operations become redundant and efficiency decreases
Solution Approach 1:
The patent merges the device management functions with the operating system's file system layer. By combining address translation, wear leveling, and garbage collection into the OS, the system eliminates redundant write operations that occur when separate controllers perform these functions. This merging improves productivity by streamlining the data path and reducing unnecessary write amplification.
3Reliability
If higher level controllers manage data operations, then data integrity is improved, but system complexity increases
Solution Approach 1:
The patent extracts complex management functions from the storage controller and relocates them to the operating system. This extraction simplifies the controller architecture to basic data transfer operations while maintaining data integrity through OS-level management. The complexity is not eliminated but relocated to where it can be managed more effectively without increasing overall system complexity.
Data Source
AI summary
A method of providing block-based storage is described. The method comprises: creating a virtual storage system for storing a dataset, the virtual storage system including a virtual drive layer that includes a plurality of virtual drives for storing at least a portion of the dataset as block data; and a block storage backend layer for storing at least the portion of the dataset as block data, the block storage backend layer including one or more block-based storage devices; receiving an I/O operation with respect to the dataset; and based on the received I/O operation, storing, in the block storage backend layer, an update to the dataset.


