Multi-Level Flash Mapping Table for Virtualization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage virtualization systems face challenges in efficiently managing large datasets on solid-state storage devices due to limitations in address space and performance, particularly when using mapping tables developed for hard disk drives.
Innovation Solution
A data storage subsystem with a networked architecture that employs a mapping table with multiple levels sorted by time, utilizing tuples for lookup keys and data values, and includes overlay tables for modifying responses, allowing for efficient read and write operations and deduplication, while leveraging the low latency of solid-state storage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If mapping tables developed for hard disk drives are used, then address translation can be performed, but the supported address space is limited by storage capacity and performance is reduced when managing large datasets on solid-state storage devices
Solution Approach 1:
The mapping table is divided into multiple levels (first level mapping table, second level mapping table, etc.) that are sorted by time. Each level stores mapping entries for different time periods, allowing the system to manage a much larger address space by segmenting the mapping data across multiple temporal layers rather than a single monolithic table.
Solution Approach 2:
The patent introduces a temporal dimension to the mapping table structure by organizing mapping entries into multiple levels sorted by time. This adds a time-based dimension to the traditional address translation table, enabling the system to handle larger address spaces while maintaining performance through time-ordered organization of mapping data.
2Productivity
If traditional mapping tables are used for solid-state storage, then address translation works, but I/O traffic is high and performance is reduced due to lack of optimization for solid-state device characteristics
Solution Approach 1:
The mapping table is pre-organized into multiple levels sorted by time before I/O operations occur. This preliminary organization of mapping data by temporal levels allows the system to efficiently locate and translate addresses without performing extensive searches during actual I/O operations, reducing I/O traffic and improving performance.
Solution Approach 2:
The patent creates multiple copies of mapping data organized into different temporal levels. Instead of a single mapping table, multiple levels store copies of mapping entries for different time periods, enabling efficient address translation by selecting the appropriate level and reducing the need for extensive data retrieval operations.
3Quantity of substance
If mapping tables are expanded to support larger address spaces, then more storage capacity is available, but the complexity of managing and updating the mapping table increases
Solution Approach 1:
The mapping table is segmented into multiple levels that are independently manageable. Each level contains mapping entries for a specific time period, allowing the system to manage large address spaces by dividing the complex mapping data into smaller, more manageable temporal segments rather than handling a single large monolithic table.
Solution Approach 2:
The mapping table structure is made dynamic by organizing data into multiple temporal levels that can be independently updated and managed. This dynamic organization allows the system to adapt to changing storage needs and manage complexity through time-based organization rather than static monolithic structure.
Data Source
AI summary
A system and method for efficiently performing user storage virtualization for data stored in a storage system including a plurality of solid-state storage devices. A data storage subsystem supports multiple mapping tables. Records within a mapping table are arranged in multiple levels. Each level stores pairs of a key value and a pointer value. The levels are sorted by time. New records are inserted in a created newest (youngest) level. No edits are performed in-place. All levels other than the youngest may be read only. The system may further include an overlay table which identifies those keys within the mapping table that are invalid.


