Storage Array Device Transition via Function Pointer Routing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional data storage systems lack a cost-effective and resource-efficient method to upgrade storage devices and improve access times without replacing the entire system, as migrating to faster storage devices is burdensome and resource-intensive.
Innovation Solution
Transitioning from original storage devices to new devices within a data storage array by modifying function pointers in the I/O path, allowing seamless copying of data and routing of requests from the original to the new device, thereby upgrading storage without replacing the entire system and minimizing resource consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If the operator replaces the entire existing data storage system with a faster system equipped with NVMe drives, then response time is improved, but the cost and complexity of the upgrade increases significantly
Solution Approach 1:
The patent segments the storage system upgrade process into independent device-level transitions. Instead of replacing the entire storage system at once, individual storage devices can be upgraded from SATA/SAS interfaces to NVMe interfaces separately. Each device transition is handled independently through function pointer modification, allowing incremental adoption of faster storage technology without committing to a complete system replacement.
Solution Approach 2:
The patent introduces function pointers as an intermediary layer between the host computer and storage devices. This intermediary mechanism allows the system to redirect I/O requests from old storage devices to new NVMe devices without requiring changes to the host computer or storage array hardware. The function pointer acts as a flexible mediator that enables seamless device substitution while maintaining system architecture integrity.
2Speed
If the operator uses a script on the host computer to transfer data from slower to faster storage devices, then storage speed is improved, but host computer resources and network bandwidth are consumed
Solution Approach 1:
The patent enables the storage array to perform self-service during device transitions. The storage array autonomously handles data migration and I/O request redirection between storage devices without requiring external intervention from the host computer. The function pointer mechanism allows the storage array to automatically route I/O requests to the appropriate devices, eliminating the need for host-based scripting and resource consumption.
3Adaptability or versatility
If the data storage array copies data from the original device to the new device while modifying I/O paths, then device transition is achieved, but data consistency must be maintained during the transition
Solution Approach 1:
The patent employs preliminary action by modifying function pointers before completing the full data migration process. The function pointer is updated to point to the new NVMe device in advance, allowing I/O requests to be redirected while the data copying process continues in the background. This preliminary modification enables the system to start using the faster storage device immediately while ensuring data consistency through controlled transition mechanisms.
Data Source
AI summary
A technique provides transitioning from an original device to a new device within a data storage array. The technique involves initiating a copying activity within the data storage array, the copying activity copying data from the original device to the new device. The technique further involves, while the data is being copied from the original device to the new device, routing write requests that target logical storage which is currently supported by the original device to both the original device and the new device. The technique further involves, after the data has been copied from the original device to the new device, performing a configuration change which routes I/O requests that target the logical storage to the new device rather than the original device.


