Pre-zeroing Storage Blocks via Asynchronous Background Scanning
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for zeroing data blocks in storage systems either cause latency in write operations or result in delays before files can be accessed, as they either zero blocks immediately or only during I/O operations, leading to inefficiencies in storage system performance.
Innovation Solution
Implementing a method where data blocks are zeroed in the background during normal system operations, using a scanner to track and zero unallocated blocks asynchronously with I/O operations, thus minimizing latency and allowing immediate file access.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data blocks are zeroed immediately when allocated to a file, then security is improved by deleting previously stored information, but file accessibility is worsened due to lag time before the file becomes accessible
Solution Approach 1:
The system performs preliminary zeroing actions by setting up unzeroed bitmaps and tracking unzeroed blocks during allocation, preparing the groundwork for future zeroing operations without immediately executing them. This allows the file to become accessible right away while zeroing is prepared for later execution during normal operations.
2Speed
If data blocks are zeroed only when an I/O operation is requested, then file accessibility is improved allowing immediate I/O operations, but write operation latency is worsened as I/O operations must wait for zeroing to complete
Solution Approach 1:
The system performs preliminary tracking of unzeroed blocks and prepares zeroing operations in advance by maintaining unzeroed bitmaps. When write operations are requested, the system has already identified which blocks need zeroing and can execute the zeroing efficiently without delaying the I/O operation, as the preparation work was done beforehand during normal system operations.
Solution Approach 2:
The system maintains continuous tracking of unzeroed blocks through bitmaps and integrates zeroing operations into the normal flow of I/O operations. Rather than stopping to zero blocks, the system continuously monitors block usage and performs zeroing as part of the ongoing I/O workflow, eliminating idle time and keeping the system in constant productive operation.
3Reliability
If data blocks are zeroed before I/O operations, then data security is improved by preventing access to previously stored information, but system productivity is worsened due to increased latency in I/O operations
Solution Approach 1:
The system maintains continuous tracking of unzeroed blocks through bitmaps and integrates zeroing operations into the normal flow of I/O operations. The scanner continuously monitors block allocation and zeroing status, and zeroing operations are performed seamlessly during regular system operations rather than interrupting the workflow. This continuous operation mode prevents idle time and maintains high system throughput while ensuring data security through proper zeroing.
Data Source
AI summary
The disclosure provides an approach for zeroing allocated storage blocks of a file. The blocks are zeroed in the background, during a normal operation of a storage system, thus lowering the chance that the latency of a storage operation would be increased by the zeroing process. The approach also precludes a delay in being able to use the file, the delay caused by pre-zeroing the storage blocks prior to use of the file.


