Storage Pool Reservation Tracking via Non-Volatile Memory Atomicity
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional data storage systems face challenges in accurately tracking and managing pool storage space reservations, particularly in ensuring that reserved storage space is honored and preventing overbooking, especially with the introduction of Direct Logical Units (DLUs) that combine features of traditional fully allocated and thin logical units.
Innovation Solution
A system and method for tracking pool storage space reservations, which involves using non-volatile memory to store slice reservation statistics and information about requests affecting these statistics, with atomic operations to ensure data integrity and accuracy, including a control module that receives requests, updates statistics, and clears information in non-volatile memory.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If conventional storage systems use volatile memory to track pool storage space reservations, then update speed is fast, but data integrity is compromised during power failures or system crashes
Solution Approach 1:
The patent applies preliminary action by writing reservation information to non-volatile memory before the actual reservation is completed. This ensures that even if a power failure occurs, the reservation data is already safely stored and can be recovered, eliminating data integrity issues while maintaining fast update speeds through the atomic operation approach
Solution Approach 2:
The patent introduces non-volatile memory as an intermediary between the volatile memory and the actual storage reservation. This intermediary layer ensures data persistence and integrity by providing a safe storage location that retains information during power failures, while the atomic operation mechanism coordinates between volatile and non-volatile memory to maintain fast update performance
2Reliability
If the system uses atomic operations to store information in non-volatile memory, then data integrity is ensured, but storage overhead increases
Solution Approach 1:
The patent applies local quality by implementing atomic operations only for the specific reservation information that requires high integrity, rather than making all storage operations atomic. This selective approach ensures data integrity for critical reservation data while minimizing the overall storage overhead and complexity of the system
Solution Approach 2:
The patent extracts the critical reservation information from the general storage operations and handles it separately with atomic operations in non-volatile memory. This extraction approach ensures that only the most important data requires the overhead of atomic operations, reducing overall system complexity while maintaining data integrity for essential reservation tracking
3Measurement precision
If the system tracks reservations for each Direct Logical Unit (DLU), then reservation accuracy is improved, but system complexity increases
Solution Approach 1:
The patent applies universality by creating a unified reservation tracking mechanism that handles both traditional fully allocated LUs and thin LUs through the same DLU interface. This universal approach improves reservation accuracy for all LU types while avoiding the complexity of implementing separate tracking systems for different LU types
Solution Approach 2:
The patent segments the reservation tracking into manageable components: non-volatile memory for persistent reservation data, volatile memory for active operation state, and atomic operations for critical updates. This segmentation allows the system to track reservations for each DLU with high accuracy while keeping the overall system complexity manageable through modular architecture
Data Source
AI summary
Systems, methods, and computer readable media for tracking storage pool reservations are disclosed. According to one aspect, the subject matter described herein includes a system for tracking storage pool reservations. The system includes a storage entity having data storage space for storing data, the data storage space being divided into a plurality of slices. The system also includes one or more portions of non-volatile memory, different from the data storage space, for storing slice reservation statistics and information about requests that affect slice reservation statistics, wherein storing information in the portion of non-volatile memory is an atomic operation. The system further includes a control module for receiving a request that affect slice reservation statistics, storing information about the request in the portion of non-volatile memory, performing the request, and updating the slice reservation statistics and clearing the information about the request in the portion of non-volatile memory.


