US2013297854A1PendingUtilityA1

Ensuring write operation consistency using raid storage devices

42
Assignee: GUPTA NITINPriority: May 4, 2012Filed: May 4, 2012Published: Nov 7, 2013
Est. expiryMay 4, 2032(~5.8 yrs left)· nominal 20-yr term from priority
G06F 11/1471G06F 11/1441G06F 2201/82
42
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Solid-state storage devices (SSD) are combined with larger capacity magnetic disk-based RAID arrays for storing write data to ensure data consistency across multiple RAID disks. Write operations are stored in a sequential write buffer in at least one SSD to guarantee their storage and then copied from the sequential write buffer to the destination address in RAID array. The sequential write buffer stores write data in locations corresponding to the order of receipt of write operations. Write data from the sequential write buffer is transferred to the RAID array in the same order and a checkpoint index is frequently updated to indicate the completion of some transfers. During system initialization, a copy of the sequential write buffer and its associated checkpoint index are retrieved and used as a starting location for transferring write data from the sequential write buffer to the magnetic disk storage devices in the RAID array.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A method of maintaining write data consistency between multiple storage devices in a storage array, the method comprising:
 retrieving from a first non-volatile and durable storage device a copy of a sequential write buffer and a checkpoint index value, wherein the sequential write buffer includes pages arranged according to a relative order of receipt of a corresponding write operation with respect to other write operations, wherein each page includes write data and a destination address;   setting a synchronization index to the checkpoint index value;   selecting a page at a location in the copy of the sequential write buffer associated with the synchronization index;   determining if the selected page has previously been transferred to a first storage device array that does not guarantee data consistency and/or durability; and   in response to the determination that the selected page may not have been transferred to the storage device array, issuing a write request to the first storage device array, wherein the write request includes the write data and destination address of the selected page.   
     
     
         2 . The method of  claim 1 , comprising:
 setting the synchronization index to a second location in the copy of the sequential write buffer; and   repeating the steps of selecting, determining, and transferring with the synchronization index set to the second location.   
     
     
         3 . The method of  claim 1 , wherein the location of the selected page in the copy of sequential write buffer is indicative of a relative order of receipt of a corresponding write operation with respect to other write operations. 
     
     
         4 . The method of  claim 1 , wherein the first storage device is included in a non-volatile and durable storage device array. 
     
     
         5 . The method of  claim 4 , wherein the first storage device is selected by an array controller. 
     
     
         6 . The method of  claim 4 , wherein the non-volatile and durable storage device array includes a plurality of non-volatile and durable storage devices, and each of the non-volatile and durable storage devices in the non-volatile and durable storage device array includes an independent sequential write buffer and checkpoint index value. 
     
     
         7 . The method of  claim 1 , wherein the first non-volatile and durable storage device includes a solid-state storage device that guarantees data consistency and durability. 
     
     
         8 . The method of  claim 1 , wherein the first storage device array includes at least first and second magnetic disk storage devices. 
     
     
         9 . The method of  claim 1 , wherein the each of the first and second magnetic disk storage devices has a data capacity larger than the first non-volatile and durable storage device. 
     
     
         10 . The method of  claim 1 , wherein determining if the selected page has previously been transferred to the first storage device array comprises:
 comparing an attribute of the selected page with an attribute of a previous page in the copy of the sequential write buffer.   
     
     
         11 . The method of  claim 1 , wherein in response to the write request to the first storage device array, the first storage device array is adapted to store a copy of the write data in each of the storage devices included in the first storage device array. 
     
     
         12 . The method of  claim 1 , wherein the first storage device array includes a RAID array. 
     
     
         13 . The method of  claim 12 , wherein the write request is issued to a software RAID controller. 
     
     
         14 . The method of  claim 12 , wherein the write request is issued to a hardware RAID controller. 
     
     
         15 . The method of  claim 1 , wherein in response to the determination that the selected page has been previously transferred to the first storage device array, waiting for the receipt of a write operation. 
     
     
         16 . The method of  claim 1 , wherein issuing the write request to the first storage device array comprises storing a page including the write data and the destination address in a sequential write buffer included in at least the first non-volatile and durable storage device; and
 upon completing the storage of the page in the sequential write buffer, transferring at least the write data from the page to the first storage device array.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.