Power-Safe Data Management via Superblock Pre-allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Solid-state storage systems face delays in read-write operations and data coherency issues due to power loss, as they need to maintain system status and ensure safe memory allocation, which current technologies do not adequately address.
Innovation Solution
The implementation of a master record system that pre-allocates and tracks superblocks for write processes, allowing immediate transition to new superblocks without waiting for master record flushing, ensuring data integrity and reducing system overhead.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the master record is flushed to non-volatile storage before each write operation, then data integrity and power-safety are improved, but read-write throughput and system performance deteriorate due to flushing delays
Solution Approach 1:
The patent applies preliminary action by pre-allocating superblocks to write processes before actual write operations occur. The master record manager reserves superblocks in advance and tracks their allocation status, so that when a write operation needs to occur, the superblock is already prepared and assigned. This eliminates the need to wait for master record flushing before each write, as the superblock allocation is performed beforehand, thereby improving throughput while maintaining power-safety through proper tracking of allocated blocks.
2Reliability
If the master record is flushed frequently to maintain system status, then data coherency and recovery capability are improved, but system overhead and processing time increase
Solution Approach 1:
The patent extracts the critical function of master record flushing by separating it from the write operation flow. Instead of flushing the master record before every write, the system extracts and maintains only the essential information about superblock allocation status in the master record. The master record manager tracks which superblocks are allocated and their status, allowing the system to maintain data coherency and recovery capability without the overhead of frequent complete flushes, thus reducing system overhead while preserving reliability.
3Reliability
If write processes wait for master record flushing before transitioning to new superblocks, then data integrity is improved, but read-write throughput deteriorates due to waiting delays
Solution Approach 1:
The patent applies preliminary action by pre-allocating superblocks to write processes before they need to transition. The master record manager reserves the next available superblock in advance and records it in the master record. When a write process completes its current operation, the superblock is already allocated and ready for immediate transition, eliminating the waiting delay. This maintains data integrity through proper tracking of allocation status while significantly improving throughput by removing the flush-wait bottleneck.
4Reliability
If the system maintains detailed tracking of all write processes and superblocks, then power-safety and recovery capability are improved, but device complexity increases
Solution Approach 1:
The patent applies segmentation by dividing the tracking function into discrete, manageable components. The master record is segmented into entries that track individual superblock allocation status, and the master record manager handles tracking at the superblock level rather than requiring detailed tracking of every individual write process. This segmentation maintains power-safety by tracking which superblocks are allocated and their status, while reducing system complexity by operating at a higher abstraction level and avoiding the need to track every write process detail individually.
Data Source
AI summary
Embodiments of the invention include systems and methods for recovering the system status and maintaining drive coherency after an unexpected power loss. In particular, these systems and methods reduce overhead for maintaining drive coherency by providing for pre-allocation of groups of write addresses and recording the pre-allocated groups of addresses to the non-volatile memory. Write processes can write to the pre-allocated group of addresses while the next group of addresses are pre-allocated and recorded to non-volatile memory.


