Virtualized Storage Migration Between Byte- and Block-Addressable Tiers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional storage systems fail to optimize data access performance, media endurance, and lifetime expectancy in processor-based devices, particularly in tiered storage systems using byte-addressable and block-addressable storage devices.
Innovation Solution
Implement a processor-based device with a virtualization layer that migrates data between byte-addressable and block-addressable storage devices by identifying low-activity and high-activity regions, exchanging them using byte-based and block-based commands, and updating translation tables to maintain data integrity and efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If data is stored in byte-addressable storage devices for fast access, then data access speed is improved, but storage cost and power consumption increase
Solution Approach 1:
The storage system is segmented into multiple tiers: byte-addressable storage (fast, high power) for active data and block-addressable storage (slow, low power) for inactive data. The virtualization layer segments the address space to manage data distribution across these tiers, allowing the system to optimize between speed and power consumption based on access patterns.
Solution Approach 2:
The system dynamically migrates data between byte-addressable and block-addressable storage tiers based on usage statistics and access patterns. The virtualization layer continuously monitors data activity and automatically promotes or demotes data blocks, enabling the system to adapt its power consumption and performance characteristics in real-time.
2Use of energy by moving object
If data is stored in block-addressable storage devices to reduce power consumption, then energy efficiency is improved, but data access speed deteriorates
Solution Approach 1:
The system performs preliminary actions by pre-fetching data blocks from block-addressable storage to byte-addressable storage before they are needed, based on predictive algorithms analyzing access patterns. This preparation reduces the impact of slower access speeds when data is initially stored in power-efficient block-addressable devices.
Solution Approach 2:
The virtualization layer acts as an intermediary between the processor and the heterogeneous storage tiers. It translates byte-addressed requests into appropriate operations on either byte-addressable or block-addressable storage, managing the complexity of accessing data across different storage types with different performance characteristics.
3Adaptability or versatility
If storage systems use tiered architecture with multiple storage types, then storage flexibility and performance optimization are improved, but system complexity increases
Solution Approach 1:
The virtualization layer provides a universal interface that presents a unified byte-addressable view to the processor while managing multiple underlying storage types (byte-addressable and block-addressable). This multi-functionality allows the system to support heterogeneous storage technologies through a single, consistent interface, reducing the apparent complexity for applications.
Solution Approach 2:
The storage management system performs self-service by automatically monitoring data access patterns, identifying migration candidates, and executing data movements between tiers without external intervention. The virtualization layer autonomously manages the complexity of tiered storage operations, reducing the burden on system administrators and software developers.
4Speed
If data migration between storage tiers is performed frequently to optimize access patterns, then data access performance is improved, but processing overhead increases
Solution Approach 1:
The system performs data migration periodically based on monitored usage statistics rather than continuously. The virtualization layer collects access pattern data over time intervals, analyzes trends, and triggers migrations at optimal moments, reducing the processing overhead associated with constant monitoring and migration while maintaining performance benefits.
Solution Approach 2:
The system changes parameters such as migration thresholds, monitoring intervals, and data block sizes based on workload characteristics and system conditions. By dynamically adjusting these parameters, the system optimizes the balance between migration frequency and processing overhead, adapting to different access patterns and performance requirements.
Data Source
AI summary
Migrating data between byte-addressable and block-addressable storage devices in processor-based devices is disclosed. In this regard, a processor of a processor-based device is communicatively coupled to both a byte-addressable storage device and a block-addressable storage device. The processor is configured to present the byte-addressable storage device and the block-addressable storage device as a single virtual storage device (i.e., as either a byte-addressable virtual device or a block-addressable virtual storage device). The processor is further configured to identify a low-activity region in the byte-addressable storage device, and to also identify a high-activity region in the block-addressable storage device. The processor then exchanges a first storage region corresponding to the low-activity region and comprising a memory address region of the byte-addressable storage device with a second storage region corresponding to the high-activity region and comprising a block region of the block-addressable storage device.


