Rate Limiting Across Paired Storage Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional storage systems face inefficiencies in data management and storage operations, particularly in handling flash drives without integrated storage controllers, leading to unnecessary write operations and reduced reliability.
Innovation Solution
Implementing a direct-mapped flash storage system where the operating system initiates and controls processes, such as data allocation and garbage collection, across multiple flash drives without involving lower-level storage controllers, utilizing non-volatile memory as a buffer for write operations and employing erasure coding for redundancy.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional storage controllers manage flash drives, then storage operations are automated, but write operations become redundant and reliability decreases
Solution Approach 1:
The patent extracts the storage controller functionality from the flash drive hardware and relocates it to the operating system software layer. This allows the OS to directly manage flash drives without intermediary controllers, eliminating redundant write operations and improving both reliability and write efficiency through direct OS control of allocation and garbage collection processes
Solution Approach 2:
The operating system performs self-service by implementing its own storage management protocols directly, handling data allocation, garbage collection, and wear leveling without external controller intervention. This self-managed approach eliminates the need for separate storage controllers and reduces redundant operations
2Quantity of substance
If multiple flash drives are used for storage, then storage capacity increases, but data management complexity increases
Solution Approach 1:
The patent merges the management of multiple flash drives into a unified OS-level storage system. The operating system consolidates control over multiple drives, presenting them as a single logical storage resource to applications while handling all complexity internally through centralized allocation and garbage collection mechanisms
Solution Approach 2:
The operating system implements universal storage management protocols that work across multiple different flash drive configurations and capacities. A single OS-level management layer handles diverse storage devices uniformly, eliminating the need for device-specific management complexity
3Device complexity
If flash drives without storage controllers are used, then device complexity decreases, but reliability of storage operations worsens
Solution Approach 1:
The operating system acts as an intermediary layer between applications and flash drives without controllers. It provides the mediation functions traditionally performed by hardware controllers, including data allocation, garbage collection, and wear leveling, thereby maintaining storage operation reliability while eliminating hardware controller complexity
Solution Approach 2:
The patent replaces the mechanical/hardware storage controller system with a software-based management system in the operating system. This substitution eliminates physical controller components while maintaining all necessary storage management functions through software protocols and algorithms
Data Source
AI summary
Applying a rate limit across a plurality of storage systems, including: determining a rate limit for paired storage systems; receiving, by a first storage system, an amount of I/O operations serviced by the second storage system during a previous predetermined period of time; determining whether the amount of I/O operations serviced by the second storage system is less than half of the rate limit for the paired storage systems; if so, setting local a rate limit for a next predetermined period of time for the first storage system to the difference between the rate limit for the paired storage systems and the amount of I/O operations serviced by the second storage system during the previous predetermined period of time; and otherwise, setting a local rate limit for a next predetermined period of time for the first storage system to half of the rate limit for the paired storage systems.


