Storage Hot Spot Tracking via Active Map Cycling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Hot spots in storage systems, characterized by frequent data access, lead to performance issues due to latency in input/output requests, necessitating effective detection and optimization to reduce access delays.
Innovation Solution
A tracking engine is employed to detect and report frequently accessed data hot spots within the storage system, utilizing vector operations and a linked list-based instantaneous storage map to capture I/O patterns in real-time, thereby enhancing cache efficiency and optimizing I/O performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If hot spot data is frequently accessed from storage system, then data availability is improved, but access latency increases leading to performance degradation
Solution Approach 1:
The patent extracts hot spot data from the main storage system and places it in a separate cache memory. The tracking engine identifies frequently accessed data blocks and extracts them to the cache, where they can be accessed with lower latency. This separation allows the storage system to maintain high data availability while the cache provides fast access to hot spots, resolving the contradiction between availability and access latency.
Solution Approach 2:
The tracking engine performs preliminary action by continuously monitoring and tracking data access patterns before performance degradation occurs. It maintains access counters and identifies hot spots in advance, allowing the system to proactively move data to cache before the storage system becomes overwhelmed by frequent access requests. This preliminary detection and preparation reduces subsequent access latency.
2Ease of operation
If storage system processes frequent I/O requests for hot spot data, then data accessibility is improved, but aggregate delay increases causing performance problems
Solution Approach 1:
The patent introduces a cache memory as an intermediary between the storage system and the frequent I/O requests for hot spot data. The cache acts as a mediator that handles read requests for frequently accessed data, preventing these requests from directly impacting the storage system's I/O processing. This intermediary layer maintains ease of data accessibility while protecting the storage system from aggregate delay caused by frequent accesses.
Solution Approach 2:
The tracking engine creates copies of hot spot data blocks and places them in cache memory. Instead of repeatedly accessing the original data in storage, the system serves copies from the cache for frequently requested blocks. This copying approach maintains full data accessibility while dramatically reducing the aggregate delay on the storage system, as cache accesses are much faster than storage I/O operations.
3Measurement precision
If tracking engine monitors all I/O commands to detect hot spots, then detection accuracy is improved, but processing overhead increases
Solution Approach 1:
The tracking engine applies partial action by selectively tracking only certain I/O commands rather than processing every single command with equal depth. It uses access counters that are incremented for each accessed block, and only performs detailed analysis on blocks that exceed certain thresholds. This selective tracking maintains accurate hot spot detection while reducing processing overhead by focusing computational resources on the most likely candidates rather than uniformly processing all I/O commands.
Data Source
AI summary
A system having input/output hot spot tracking is disclosed. The storage system includes a storage device, a host controller coupled to the storage device, and a tracking engine coupled to the host controller and the storage device. The host controller is configured to managed input/output of the storage device. The tracking engine includes a storage map cycling between active status and passive status. Input/output commands are stored in the storage map during the active status. Like input/output commands in the storage map during active status are counted and compared to a number. Counts greater than the number are reported as input/output hot spots.


