Dynamic Block Storage Resizing Using Write and Discard Tracking
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional block storage systems face inefficiencies in resource utilization and cost due to excessive allocation of storage capacity, even with thin provisioning, leading to wasted resources and high costs, especially in cloud-computing platforms.
Innovation Solution
A driver intercepts write and discard messages to track storage usage, reducing capacity when excessive and increasing it when insufficient, without requiring integration with the file system, and supports thin provisioning by mapping logical to physical addresses.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If thin provisioning is used to dynamically allocate storage capacity, then storage resource utilization is improved, but storage capacity cannot be reduced when excessive
Solution Approach 1:
The patent implements dynamic storage capacity adjustment by introducing a driver that continuously monitors storage usage and automatically expands or shrinks the block storage volume based on actual needs. This transforms the static thin provisioning system into a dynamic one that can adapt capacity in real-time, resolving the contradiction between resource utilization and capacity adjustability.
Solution Approach 2:
The patent employs feedback mechanisms where the driver monitors storage usage metrics and uses this information to make intelligent decisions about capacity adjustment. The system receives feedback about actual storage consumption and responds by expanding or shrinking capacity accordingly, enabling the system to maintain optimal resource utilization while automatically adjusting capacity when conditions change.
2Reliability
If block storage capacity is increased to ensure sufficient space, then storage availability is improved, but resource waste and costs increase
Solution Approach 1:
The system dynamically adjusts storage capacity based on actual usage patterns, expanding when needed to maintain availability and shrinking when excess capacity exists to eliminate waste. This dynamic approach replaces static over-provisioning with adaptive capacity management that balances reliability and resource efficiency.
Solution Approach 2:
The patent changes the parameter of storage capacity dynamically based on usage conditions. Rather than maintaining a fixed capacity, the system adjusts the capacity parameter in response to monitored storage consumption, allowing it to optimize between availability and waste reduction by modifying this key parameter as needed.
3Quantity of substance
If storage capacity is reduced to eliminate waste, then resource efficiency is improved, but storage availability may become insufficient
Solution Approach 1:
The system uses dynamic monitoring and automatic expansion capabilities to safely reduce capacity when efficiency is prioritized, with the guarantee that capacity will be increased again if availability becomes insufficient. This creates a dynamic balance where the system can optimize for efficiency without permanently compromising availability.
Solution Approach 2:
The feedback mechanism monitors storage availability metrics and triggers capacity expansion when thresholds are approached. This allows the system to reduce capacity for efficiency gains while maintaining a safety net that automatically restores availability when needed, resolving the contradiction between efficiency optimization and availability maintenance.
4Productivity
If a driver intercepts messages to track storage usage, then capacity management is improved, but system complexity increases
Solution Approach 1:
The patent introduces a driver as an intermediary component that sits between the file system and the block storage device. This intermediary intercepts messages to monitor usage and manage capacity, centralizing the complexity in a dedicated component rather than distributing it throughout the system, which improves capacity management while containing complexity in a manageable location.
Solution Approach 2:
The driver implements self-service capacity management by automatically monitoring usage, determining when expansion or shrinkage is needed, and executing capacity adjustments without external intervention. This automation improves management efficiency while the encapsulated nature of the driver keeps the added complexity contained within a single self-managing component.
Data Source
AI summary
A method for use with at least one remote storage device includes, using a processor of a local device, intercepting messages from a file system running on the local device and directed to the remote storage device, the messages including write messages, which specify data to be written to block storage on the remote storage device allocated to a user account associated with the local device, and discard messages, which reference portions of the data no longer required by the file system. The method further includes, based on the messages, tracking a size of the data stored in the block storage and required by the file system, based on the tracking, determining that a capacity of the allocated block storage is excessive, relative to the size of the data, and in response to the capacity being excessive, reducing the capacity. Other embodiments are also described.


