← Back to Patent Explorer
US6611901B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Method, system, and program for maintaining electronic data as of a point-in-time

Assignee: International Business Machines Corp
•
Filing: 1999-07-02
•
Granted: 2003-08-26
•
Expires: 2019-07-02
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Disclosed is a method, system, program, and data structures for maintaining electronic data at a point-in-time. A first data structure indicates point-in-time data at one of a first storage location and a corresponding second storage location. A second data structure indicates point-in-time data at one of a first storage location and corresponding second storage location. A first relationship data structure indicates a relationship between the first storage location and corresponding second storage location and a second relationship data structure indicates a relationship between the first storage location and second storage location. A request to process the first storage location is processed by processing the first relationship data structure to determine the corresponding second storage location for the first storage location and processing the first data structure to determine whether data at the first storage location was transferred to the second storage location. A request to process the second storage location is processed by processing the second relationship data structure to determine the corresponding first storage location for the second storage location and processing the second data structure to determine whether the point-in-time data at the first storage location was transferred to the second storage location.

Inventors

  • 👤 William Frank Micka
  • 👤 Yoram Novick
  • 👤 David Michael Shackelford

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-02 21:23
CPC Classifications
G; G06; G06F; G06F3/00; G06F3/06; G06F3/0601; G06F3/0628; G06F3/0646; G06F3/065; G06F3/0602; G06F3/0614; G06F3/0668; G06F3/0671; G06F3/0673; G06F3/0674; G06F3/0676; G06F11/00; G06F11/07; G06F11/14; G06F11/1446; G06F11/1458; G06F11/1466; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0866

Claims Analysis

Total Claims: 48
Claim 1
Independent Claim 208 words
A method for maintaining electronic data at a point-in-time, comprising: generating a first data structure indicating point-in-time data at one of a first storage location and a corresponding second storage location, wherein the first and second storage locations comprise physical storage locations on a storage medium; generating a second data structure indicating point-in-time data at one of a first storage location and corresponding second storage location; generating a first relationship data structure indicating a relationship between the first storage location and corresponding second storage location; generating a second relationship data structure indicating a relationship between the first storage location and second storage location; processing a request with respect to the first storage location by processing the first relationship data structure to determine the corresponding second storage location for the first storage location and processing the first data structure to determine whether data at the first storage location was transferred to the second storage location; and processing a request with respect to the second storage location by processing the second relationship data structure to determine the corresponding first storage location for the second storage location and processing the second data structure to determine whether the point-in-time data at the first storage location was transferred to the second storage location.
Claim 2
Independent Claim 208 words
A method for maintaining electronic data at a point-in-time, comprising: generating a first data structure indicating point-in-time data at one of a first storage location and a corresponding second storage location, wherein the first and second storage locations comprise physical storage locations on a storage medium; generating a second data structure indicating point-in-time data at one of a first storage location and corresponding second storage location; generating a first relationship data structure indicating a relationship between the first storage location and corresponding second storage location; generating a second relationship data structure indicating a relationship between the first storage location and second storage location; processing a request with respect to the first storage location by processing the first relationship data structure to determine the corresponding second storage location for the first storage location and processing the first data structure to determine whether data at the first storage location was transferred to the second storage location; and processing a request with respect to the second storage location by processing the second relationship data structure to determine the corresponding first storage location for the second storage location and processing the second data structure to determine whether the point-in-time data at the first storage location was transferred to the second storage location.
Claim 3
Dependent Claim 45 words
The method of claim 1 , wherein the data at the point-in-time comprises multiple storage units of data, wherein the first and second data structures indicate whether each storage unit of point-in-time data is located at one of the first and corresponding second storage locations.
Claim 4
Dependent Claim 40 words
The method of claim 1 , wherein the first and second relationship data structures each indicate a range of first storage locations for storing the point-in-time data and a corresponding range of second storage location for storing the point-in-time data.
Claim 5
Dependent Claim 67 words
The method of claim 3 , wherein the first and second data structures and relationship data structures are established at a first point-in-time, further comprising establishing at a second point-in-time a third relationship data structure indicating a range of third storage locations corresponding to the second storage location, wherein the second point-in-time data is maintained at one of the third storage location and corresponding second storage location.
Claim 6
Dependent Claim 38 words
The method of claim 1 , wherein the first and second data structures and relationship data structures are created in response to a request to copy point-in-time data from the first storage location to the second storage location.
Claim 7
Dependent Claim 22 words
The method of claim 5 , further comprising copying the point-in-time data from the first storage location to the second storage location.
Claim 8
Dependent Claim 47 words
The method of claim 6 , further comprising modifying the first and second data structures to indicate that point-in-time data copied from the first storage location to the second storage location is not located at the first storage location and is located at the second storage location.
Claim 9
Dependent Claim 95 words
The method of claim 1 , further comprising: receiving an update to point-in-time data; processing the first data structure to determine whether the point-in-time data to update is at the first storage location; copying the point-in-time data to update from the first storage location to the corresponding second storage location after determining that the point-in-time data to update is at the first storage location; modifying the first and second data structures to indicate that the point-in-time data to update is at the second storage location; and updating the point-in-time data at the first storage location.
Claim 10
Dependent Claim 94 words
The method of claim 8 , wherein each storage location comprises corresponding locations in a cache and a storage device, wherein copying the point-in-time data from the first storage location to the corresponding second storage location comprises: copying the data to the second storage location in cache; destaging the data at the second storage location in cache to the corresponding location in the storage device, wherein modifying the first and second data structures occurs after destaging the data from the second storage location in cache to the corresponding location in the second storage device.
Claim 11
Dependent Claim 108 words
The method of claim 8 , wherein the first storage location comprises a first logical storage location addressing first physical storage locations including the point-in-time data and the second storage locations comprises a second logical storage location addressing second storage locations, wherein copying the point-in-time data to update comprises copying the data to the corresponding second storage location addressed by the second logical storage locations, and wherein updating the point-in-time data at the source storage location comprises copying the point-in-time data to a new physical location and modifying the first logical storage location addressing the point-in-time data to address the new physical location including the updated point-in-time data.
Claim 12
Dependent Claim 99 words
The method of claim 1 , further comprising: receiving a request to read point-in-time data from the second storage location; processing the first data structure to determine whether the requested point-in-time data is at the first storage location; copying the requested point-in-time data from the first storage location to the corresponding second storage location after determining that the requested point-in-time data is at the first storage location; modifying the first and second data structures to indicate that the requested point-in-time data update is at the second storage location; and returning the requested point-in-time data from the second storage location.
Claim 13
Dependent Claim 111 words
The method of claim 11 , wherein each storage location comprises corresponding locations in a cache and a storage device, wherein copying the point-in-time data from the first storage location to the corresponding second storage location comprises: copying the data to the second storage location in cache; destaging the data: at the second storage location in cache to the corresponding location in the second storage device, wherein modifying the first and second data structures occurs after destaging the data from the second storage location in cache to the corresponding second storage location in the storage device, and wherein the requested point-in-time data is returned from the second storage location in cache.
Claim 14
Dependent Claim 94 words
The method of claim 1 , further comprising: receiving a request to update point-in-time data at the second storage location; updating the point-in-time data at the second storage location; determining whether the first and second data structures indicate that the point-in-time data to update is at the first storage location; and modifying the first and second data structures to indicate that the point-in-time data to update is at the second storage location after determining that the first and second data structures indicate that the point-in-time data to update is at the first storage location.
Claim 15
Independent Claim 247 words
A system for maintaining electronic data at a point in time, comprising: a processing unit; a storage medium; storage locations accessible to the processing unit, wherein the storage locations comprise physical storage locations on the storage medium; and program logic executed by the processing unit, comprising: (i) means for generating a first data structure indicating point-in-time data at one of a first storage location and a corresponding second storage location; (ii) means for generating a second data structure indicating point-in-time data at one of a first storage location and corresponding second storage location; (iii) means for generating a first relationship data structure indicating a relationship between the first storage location and corresponding second storage location; (iv) means for generating a second relationship data structure indicating a relationship between the first storage location and second storage location; (v) means for processing a request with respect to the first storage location by processing the first relationship data structure to determine the corresponding second storage location for the first storage location and processing the first data structure to determine whether data at the first storage location was transferred to the second storage location; and (vi) means for processing a request with respect to the second storage location by processing the second relationship data structure to determine the corresponding first storage location for the second storage location and processing the second data structure to determine whether the point-in-time data at the first storage location was transferred to the second storage location.
Claim 16
Independent Claim 247 words
A system for maintaining electronic data at a point in time, comprising: a processing unit; a storage medium; storage locations accessible to the processing unit, wherein the storage locations comprise physical storage locations on the storage medium; and program logic executed by the processing unit, comprising: (i) means for generating a first data structure indicating point-in-time data at one of a first storage location and a corresponding second storage location; (ii) means for generating a second data structure indicating point-in-time data at one of a first storage location and corresponding second storage location; (iii) means for generating a first relationship data structure indicating a relationship between the first storage location and corresponding second storage location; (iv) means for generating a second relationship data structure indicating a relationship between the first storage location and second storage location; (v) means for processing a request with respect to the first storage location by processing the first relationship data structure to determine the corresponding second storage location for the first storage location and processing the first data structure to determine whether data at the first storage location was transferred to the second storage location; and (vi) means for processing a request with respect to the second storage location by processing the second relationship data structure to determine the corresponding first storage location for the second storage location and processing the second data structure to determine whether the point-in-time data at the first storage location was transferred to the second storage location.
Claim 17
Dependent Claim 33 words
The system of claim 14 , wherein the processing unit comprises a storage controller and wherein the storage locations are on a Direct Access Storage Device (DASD) and the point-in-time data comprises tracks.
Claim 18
Dependent Claim 45 words
The system of claim 14 , wherein the data at the point-in-time comprises multiple storage units of data, wherein the first and second data structures indicate whether each storage unit of point-in-time data is located at one of the first and corresponding second storage locations.
Claim 19
Dependent Claim 40 words
The system of claim 14 , wherein the first and second relationship data structures each indicate a range of first storage locations for storing the point-in-time data and a corresponding range of second storage location for storing the point-in-time data.
Claim 20
Dependent Claim 74 words
The system of claim 17 , wherein the first and second data structures and relationship data structures are established at a first point-in-time, and wherein the program logic further comprises means for establishing at a second point-in-time a third relationship data structure indicating a range of third storage locations corresponding to the second storage location, wherein the second point-in-time data is maintained at one of the third storage location and corresponding second storage location.
Claim 21
Dependent Claim 36 words
The system of claim 14 , wherein the program logic creates the first and second data structures in response to a request to copy point-in-time data from the first storage location to the second storage location.
Claim 22
Dependent Claim 28 words
The system of claim 19 , wherein the program logic further comprises means for copying the point-in-time data from the first storage locations to the second storage location.
Claim 23
Dependent Claim 51 words
The system of claim 20 , wherein the program logic further comprises modifying the first and second data structures to indicate that point-in-time data copied from the first storage location to the second storage location is not located at the first storage location and is located at the second storage location.
Claim 24
Dependent Claim 109 words
The system of claim 14 , wherein the program logic further comprises: means for receiving an update to point-in-time data; means for processing the first data structure to determine whether the point-in-time data to update is at the first storage location; means for copying the point-in-time data to update from the first storage location to the corresponding second storage location after determining that the point-in-time data to update is at the first storage location; means for modifying the first and second data structures to indicate that the point-in-time data to update is at the second storage location; and means for updating the point-in-time data at the first storage location.
Claim 25
Dependent Claim 112 words
The system of claim 22 , further comprising: a storage device; a cache accessible to the processing unit, wherein each storage location comprise a corresponding location in the cache and the storage device, and wherein the program logic for copying the point-in-time data from the first storage location to the corresponding second storage location comprises: copying the data to the second storage location in cache; destaging the data at the second storage location in cache to the corresponding location in the storage device, wherein modifying the first and second data structures occurs after destaging the data from the second storage location in cache to the corresponding location in the second storage device.
Claim 26
Dependent Claim 122 words
The system of claim 22 , wherein the first storage location comprises a first logical storage location addressing first physical storage locations including the point-in-time data and the second storage locations comprises a second logical storage location addressing second storage locations, wherein the program logic for copying the point-in-time data to update comprises means for copying the data to the corresponding second storage location addressed by the second logical storage locations, and wherein the program logic for updating the point-in-time data at the source storage location comprises means for copying the point-in-time data to a new physical location and means for modifying the first logical storage location addressing the point-in-time data to address the new physical location including the updated point-in-time data.
Claim 27
Dependent Claim 113 words
The system of claim 14 , wherein the program logic further comprises: means for receiving a request to read point-in-time data from the second storage location; means for processing the first data structure to determine whether the requested point-in-time data is at the first storage location; means for copying the requested point-in-time data from the first storage location to the corresponding second storage location after determining that the requested point-in-time data is at the first storage location; means for modifying the first and second data structures to indicate that the requested point-in-time data update is at the second storage location; and means for returning the requested point-in-time data from the second storage location.
Claim 28
Dependent Claim 125 words
The system of claim 14 , further comprising: a storage device; a cache accessible to the processing unit, wherein each storage location comprise a corresponding location in the cache and the storage device, and wherein copying the point-in-time data from the first storage location to the corresponding second storage location comprises: copying the data to the second storage location in cache; destaging the data at the second storage location in cache to the corresponding location in the second storage device, wherein modifying the first and second data structures occurs after destaging the data from the second storage location in cache to the corresponding second storage location in the storage device, and wherein the requested point-in-time data is returned from the second storage location in cache.
Claim 29
Dependent Claim 105 words
The system of claim 14 , wherein the program logic further comprises: means for receiving a request to update point-in-time data at the second storage location; means for updating the point-in-time data at the second storage location; means for determining whether the first and second data structures indicate that the point-in-time data to update is at the first storage location; and means for indicating in the first and second data structures that the point-in-time data to update is at the second storage location after determining that the first and second data structures indicate that the point-in-time data to update is at the first storage location.
Claim 30
Dependent Claim 235 words
An article of manufacture for maintaining electronic data at a point-in-time, the article of manufacture comprising computer readable storage media including at least one computer program embedded therein that is capable of causing a computer to perform: generating a first data structure indicating point-in-time data at one of a first storage location and a corresponding second storage location, wherein the first and second storage locations comprise physical storage locations on a storage medium; generating a second data structure indicating point-in-time data at one of a first storage location and corresponding second storage location; generating a first relationship data structure indicating a relationship between the first storage location and corresponding second storage location; generating a second relationship data structure indicating a relationship between the first storage location and second storage location; processing a request with respect to the first storage location by processing the first relationship data structure to determine the corresponding second storage location for the first storage location and processing the first data structure to determine whether data at the first storage location was transferred to the second storage location; and processing a request with respect to the second storage location by processing the second relationship data structure to determine the corresponding first storage location for the second storage location and processing the second data structure to determine whether the point-in-time data at the first storage location was transferred to the second storage location.
Claim 31
Dependent Claim 235 words
An article of manufacture for maintaining electronic data at a point-in-time, the article of manufacture comprising computer readable storage media including at least one computer program embedded therein that is capable of causing a computer to perform: generating a first data structure indicating point-in-time data at one of a first storage location and a corresponding second storage location, wherein the first and second storage locations comprise physical storage locations on a storage medium; generating a second data structure indicating point-in-time data at one of a first storage location and corresponding second storage location; generating a first relationship data structure indicating a relationship between the first storage location and corresponding second storage location; generating a second relationship data structure indicating a relationship between the first storage location and second storage location; processing a request with respect to the first storage location by processing the first relationship data structure to determine the corresponding second storage location for the first storage location and processing the first data structure to determine whether data at the first storage location was transferred to the second storage location; and processing a request with respect to the second storage location by processing the second relationship data structure to determine the corresponding first storage location for the second storage location and processing the second data structure to determine whether the point-in-time data at the first storage location was transferred to the second storage location.
Claim 32
Dependent Claim 47 words
The article of manufacture of claim 28 , wherein the data at the point-in-time comprises multiple storage units of data, wherein the first and second data structures indicate whether each storage unit of point-in-time data is located at one of the first and corresponding second storage locations.
Claim 33
Dependent Claim 42 words
The article of manufacture of claim 28 , wherein the first and second relationship data structures each indicate a range of first storage locations for storing the point-in-time data and a corresponding range of second storage location for storing the point-in-time data.
Claim 34
Dependent Claim 69 words
The article of manufacture of claim 30 , wherein the first and second data structures and relationship data structures are established at a first point-in-time, further comprising establishing at a second point-in-time a third relationship data structure indicating a range of third storage locations corresponding to the second storage location, wherein the second point-in-time data is maintained at one of the third storage location and corresponding second storage location.
Claim 35
Dependent Claim 40 words
The article of manufacture of claim 28 , wherein the first and second data structures and relationship data structures are created in response to a request to copy point-in-time data from the first storage location to the second storage location.
Claim 36
Dependent Claim 24 words
The article of manufacture of claim 32 , further comprising copying the point-in-time data from the first storage location to the second storage location.
Claim 37
Dependent Claim 49 words
The article of manufacture of claim 33 , further comprising modifying the first and second data structures to indicate that point-in-time data copied from the first storage location to the second storage location is not located at the first storage location and is located at the second storage location.
Claim 38
Dependent Claim 97 words
The article of manufacture of claim 28 , further comprising: receiving an update to point-in-time data; processing the first data structure to determine whether the point-in-time data to update is at the first storage location; copying the point-in-time data to update from the first storage location to the corresponding second storage location after determining that the point-in-time data to update is at the first storage location; modifying the first and second data structures to indicate that the point-in-time data to update is at the second storage location; and updating the point-in-time data at the first storage location.
Claim 39
Dependent Claim 100 words
The article of manufacture of claim 35 , wherein each storage location comprises corresponding locations in a cache and a storage device, wherein causing the computer to copy the point-in-time data from the first storage location to the corresponding second storage location comprises: copying the data to the second storage location in cache; destaging the data at the second storage location in cache to the corresponding location in the storage device, wherein modifying the first and second data structures occurs after destaging the data from the second storage location in cache to the corresponding location in the second storage device.
Claim 40
Dependent Claim 110 words
The article of manufacture of claim 35 , wherein the first storage location comprises a first logical storage location addressing first physical storage locations including the point-in-time data and the second storage locations comprises a second logical storage location addressing second storage locations, wherein copying the point-in-time data to update comprises copying the data to the corresponding second storage location addressed by the second logical storage locations, and wherein updating the point-in-time data at the source storage location comprises copying the point-in-time data to a new physical location and modifying the first logical storage location addressing the point-in-time data to address the new physical location including the updated point-in-time data.
Claim 41
Dependent Claim 101 words
The article of manufacture of claim 28 , further comprising: receiving a request to read point-in-time data from the second storage location; processing the first data structure to determine whether the requested point-in-time data is at the first storage location; copying the requested point-in-time data from the first storage location to the corresponding second storage location after determining that the requested point-in-time data is at the first storage location; modifying the first and second data structures to indicate that the requested point-in-time data update is at the second storage location; and returning the requested point-in-time data from the second storage location.
Claim 42
Dependent Claim 117 words
The article of manufacture of claim 38 , wherein each storage location comprises corresponding locations in a cache and a storage device, wherein causing the computer to copy the point-in-time data from the first storage location to the corresponding second storage location comprises: copying the data to the second storage location in cache; destaging the data at the second storage location in cache to the corresponding location in the second storage device, wherein modifying the first and second data structures occurs after destaging the data from the second storage location in cache to the corresponding second storage location in the storage device, and wherein the requested point-in-time data is returned from the second storage location in cache.
Claim 43
Dependent Claim 95 words
The article of manufacture of claim 28 , further comprising: receiving a request to update point-in-time data at the second storage location; updating the point-in-time data at the second storage location; determining whether the first and second data structures indicate that the point-in-time data to update is at the first storage location; and indicating in the first and second data structures that the point-in-time data to update is at the second storage location after determining that the first and second data structures indicate that the point-in-time data to update is at the first storage location.
Claim 44
Dependent Claim 118 words
A memory device for maintaining electronic data at a point-in-time, comprising: a first data structure indicating point-in-time data at first storage locations; a second data structure indicating point-in-time data at second storage locations, wherein a first storage location has a corresponding second storage location, wherein point-in-time data is located at one of the first storage locations and corresponding second storage locations, and wherein the first and second storage locations comprise physical storage locations on a storage medium; a first relationship data structure indicating a relationship between the first data structure and the first and second storage locations; and a second relationship data structure indicating a relationship between the second data structure and the first and second storage locations.
Claim 45
Dependent Claim 118 words
A memory device for maintaining electronic data at a point-in-time, comprising: a first data structure indicating point-in-time data at first storage locations; a second data structure indicating point-in-time data at second storage locations, wherein a first storage location has a corresponding second storage location, wherein point-in-time data is located at one of the first storage locations and corresponding second storage locations, and wherein the first and second storage locations comprise physical storage locations on a storage medium; a first relationship data structure indicating a relationship between the first data structure and the first and second storage locations; and a second relationship data structure indicating a relationship between the second data structure and the first and second storage locations.
Claim 46
Dependent Claim 45 words
The memory of claim 41 , wherein the data at the point-in-time comprises multiple storage units of data, wherein the first and second data structures indicate whether each storage unit of point-in-time data is located at one of the first and corresponding second storage locations.
Claim 47
Dependent Claim 40 words
The memory of claim 41 , wherein the first and second relationship data structures each indicate a range of first storage locations for storing the point-in-time data and a corresponding range of second storage locations for storing the point-in-time data.
Claim 48
Dependent Claim 67 words
The memory of claim 43 , wherein the first and second data structures and relationship data structures are established at a first point-in-time, further comprising a third relationship data structure established at a second point-in-time indicating a range of third storage locations corresponding to the first and second storage locations, wherein the second point-in-time data is maintained at one of the first, second, and third storage locations.

References Cited (Backward Citations)

US4750106A Cited
US5008786A Cited
US5321832A Cited
US5504857A Cited
US5274807A Cited
US5394539A Cited
US5241668A Cited
US5664186A Cited
US5403639A Cited
US5623669A Cited
US5604902A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2006-08-25 2007-02-24 2007-08-26 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2010-08-25 2011-02-24 2011-08-26 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2014-08-25 2015-02-24 2015-08-26 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag