Font Size: a A A

Design And Implementation Of Data Recovery Mechanism For Solid State Drive Supporting RAID

Posted on:2024-02-12Degree:MasterType:Thesis
Country:ChinaCandidate:J H LuoFull Text:PDF
GTID:2558307106989919Subject:Computer technology
Abstract/Summary:PDF Full Text Request
NAND flash memory-based Solid-State Drives(SSDs)have the advantages of low power consumption,fast random access,and compact architecture.Consequently,they have become the mainstream storage device in the market.With the continuous development of flash memory units,the density of flash memory units keeps growing,which means that the capacity of a single SSD is becoming large.However,the probability of data loss in SSDs is becoming large accordingly,which seriously affects the reliability of data in SSDs.In order to ensure the reliability of data stored in SSDs and to ensure that the lost data can be recovered when encountering a failure of SSD devices,one widely adopted solution is to apply the RAID technology inside SSDs to manage and protect data blocks in the form of data stripes.RAID-5 is the most common RAID implementation mechanism in SSDs.It organizes data blocks into stripes and protects data blocks by generating parity blocks for stripe data blocks.In other words,when a data block is lost,other data blocks and parity blocks in the same stripe can be used to recover the lost data block.However,due to the characteristics of SSDs and the features of RAID technology,data recovery will lead to a sharp decline in the I/O performance of SSDs.Specifically,traditional offline recovery modes cannot provide services for I/O requests during the process of data recovery,which exacerbates the blocking degree of the internal request queue of SSDs,severely affecting the overall performance of SSDs.In order to make up for the shortcoming that the data recovery mechanism based on RAID-5 cannot respond to current I/O requests during data recovery,this thesis proposes an online data recovery mechanism that takes into account responding to I/O requests.Specifically,while recovering the lost data blocks,some user I/O requests are responded to,thus reducing data recovery overhead and alleviating the blocking degree of the internal I/O request queue of the SSDs,ultimately achieving the goal of improving the performance of the SSDs.At the same time,this thesis finds that the order of data recovery may have different degrees of impact on the system,that is,unreasonable recovery order may lead to greater recovery overhead.Therefore,in order to reasonably schedule the recovery order of data blocks,on the basis of the data recovery mechanism that responds to internal I/O requests,a data recovery optimization mechanism for dynamically adjusting the recovery order is further proposed.In other words,according to the priority of the data blocks to be recovered,dynamically adjust the recovery order of all data blocks to ensure that more user I/O requests can be responded to earlier during data recovery,shorten the average waiting time of I/O requests,and effectively reduce the I/O performance impact caused by data recovery.Finally,a series of experiments were conducted on the SSDSim simulator to prove the effectiveness of the two data recovery optimization mechanisms proposed in this thesis.According to the experimental results,it can be seen that the data recovery mechanism proposed in this paper can not only reduce the cost of recovering data,but also alleviate the blocking degree of user I/O requests on SSDs,effectively reducing the system’s I/O request response time,ultimately achieving the goal of reducing the impact of data recovery on the performance of SSDs.
Keywords/Search Tags:SSD, RAID-5, Data Recovery, I/O Performance, Request Scheduling
PDF Full Text Request
Related items