US2004128404A1PendingUtilityA1

Method and system for providing advanced warning to a data stage device in order to decrease the time for a mirror split operation without starving host I/O request processing

Priority: Jun 28, 2001Filed: Dec 12, 2003Published: Jul 1, 2004
Est. expiryJun 28, 2021(expired)· nominal 20-yr term from priority
Inventors:Robert Cochran
G06F 3/0611G06F 3/0689G06F 3/065G06F 3/0613G06F 3/0601G06F 11/2069G06F 11/2071
46
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A method and system for decreasing the time needed for a mirror split operation in a data storage device by preparing for the mirror split operation during a time interval between notification of an intended mirror split operation and the subsequent time of the mirror split operation. In general, local writes are processed preferentially and asynchronously with respect to corresponding mirror writes, but, after receiving a split advance warning, the data storage device controller preferentially processes backlogged mirror writes in order that the mirrored data storage units are nearly consistent at the time that the intended mirror split operation request is received.

Claims

exact text as granted — not AI-modified
1 . A method for improving the performance of a mirror split operation by a data storage device controller, the method comprising: 
 providing a split advance warning interface for receiving a split advance warning;    upon receiving a split advance warning, determining a mirror-I/O-request-processing-to-local-I/O-request-processing-rate ratio in order to process backlogged mirror I/O requests prior to receiving a corresponding mirror split operation request; and    processing mirror I/O requests and local I/O requests according to the mirror-I/O-request-processing-to-local-I/O-request-processing-rate ratio until an expected time of occurrence of the corresponding mirror split operation.    
     
     
         2 . The method of  claim 1  further including determining the mirror-I/O-request-processing-to-local-I/O-request-processing-rate ratio based on an estimated time for executing backlogged mirror I/O requests.  
     
     
         3 . The method of  claim 1  further including determining the mirror-I/O-request-processing-to-local-I/O-request-processing-rate ratio based on an estimated number of backlogged mirror I/O requests.  
     
     
         4 . The method of  claim 1  further including determining the mirror-I/O-request-processing-to-local-I/O-request-processing-rate ratio based on a current number of backlogged mirror I/O requests.  
     
     
         5 . The method of  claim 1  further including: 
 while processing mirror I/O requests and local I/O requests until the expected time of occurrence of the corresponding mirror split operation, periodically re-determining the mirror-I/O-request-processing-to-local-I/O-request-processing-rate ratio according to currently backlogged mirror I/O requests.  
 
     
     
         6 . The method of  claim 1  wherein the data storage device is a disk array.  
     
     
         7 . The method of  claim 6  wherein the mirror split operation is directed to a mirrored logical unit comprising a first logical unit and a second logical unit, the disk array controller mirroring all local I/O requests directed to the first logical unit that change data stored in the first logical unit to the second logical unit as mirror I/O requests.  
     
     
         8 . The method of  claim 7  wherein the first and second logical units are both contained in the data storage device.  
     
     
         9 . The method of  claim 7  wherein the first logical unit is contained in the data storage device and the second logical unit is contained in a remote data storage device.  
     
     
         10 . The method of  claim 6  wherein the mirror split operation is directed to a mirrored logical unit comprising a first logical unit and a number of mirror logical units, the disk array controller mirroring all local I/O requests directed to the first logical unit that change data stored in the first logical unit to the number of mirror logical units as mirror I/O requests.  
     
     
         11 . The method of  claim 1  wherein the data storage device controller maintains a number of mirrored logical units and concurrently manages split advance warnings directed to a number of mirrored logical units.  
     
     
         12 . The method of  claim 1  wherein processing mirror I/O requests and local I/O requests according to the mirror-I/O-request-processing-to-local-I/O-request-processing-rate ratio until an expected time of occurrence of the corresponding mirror split operation further includes: 
 when mirror I/O requests are backlogged, and local I/O requests are pending, processing mirror I/O requests and local I/O requests at rates corresponding to the mirror-I/O-request. processing-to-local-I/ 0 -request-processing-rate ratio;  
 when mirror I/O requests are backlogged, and no local I/O requests are pending, processing mirror I/O requests; and  
 when no mirror I/O requests are backlogged, and local I/O requests are pending, processing local I/O requests.  
 
     
     
         13 . A data storage device controller that provides a split advance warning interface, the data storage device controller comprising: 
 a mirroring component that executes local I/O requests directed to a mirrored logical unit by executing the local I/O requests to a first logical unit and automatically generating a mirror I/O request directed to a second logical unit;    a buffering component for buffering incoming local I/O requests and for buffering mirror I/O requests; and    a split advance warning component that receives a split advance warning directed to mirrored logical unit and that, after receiving the split advance warning, controls the data storage device controller to preferentially process buffered mirror I/O requests over processing buffered incoming local I/O requests in order to bring the second logical unit into a data state consistent with a current data state of the first logical unit upon reception by the data storage device controller of a corresponding mirror split operation request.    
     
     
         14 . The data storage device controller of  claim 13  wherein the split advance warning component determines a mirror-I/O-request-processing-to-local-I/O-request-processing-rate ratio according to which the data storage device controller processes buffered mirror I/O requests in preference to processing buffered incoming local I/O requests.  
     
     
         15 . The data storage device controller of  claim 14  wherein, after receiving the split advance warning and before receiving the corresponding mirror split operation request by the data storage device controller, the split advance warning component re-determines the mirror-I/O-request-processing-to-local-I/O-request-processing-rate ratio in order to more closely tune respective rates of buffered mirror I/O requests processing and buffered incoming local I/O requests processing in order to bring the second logical unit into a data state consistent with a current data state of the first logical unit upon reception by the data storage device controller of a corresponding mirror split operation request.  
     
     
         16 . The data storage device controller of  claim 14  wherein processing by data storage device controller of the mirror I/O requests and local I/O requests according to the mirror-I/O-request-processing-to-local-I/O-request-processing-rate ratio further includes: 
 when mirror I/O requests are backlogged, and local I/O requests are pending, processing mirror I/O requests and local I/O requests at rates corresponding to the mirror-I/O-request-processing-to-local-I/O-request-processing-rate ratio;  
 when mirror I/O requests are backlogged, and no local I/O requests are pending, processing mirror I/O requests; and  
 when no mirror I/O requests are backlogged, and local I/O requests are pending, processing local I/O requests.  
 
     
     
         17 . The data storage device controller of  claim 13  wherein the first logical unit is contained within the data storage device and the second logical unit is contained within a remote data storage device.  
     
     
         18 . The data storage device controller of  claim 13  wherein both the first logical unit and the second logical unit is contained within a the data storage device.  
     
     
         19 . The data storage device controller of  claim 13  wherein the data storage device controller manages a number of mirrored logical units and concurrently manages advance split warnings directed to a number of mirrored logical units.

Join the waitlist — get patent alerts

Track US2004128404A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.