US5403639A
Expired / Lapsed
US
⏱️ 0.0 years remaining
File server having snapshot application data groups
Assignee: Storage Technology Corp
•
Filing: 1992-09-02
•
Granted: 1995-04-04
•
Expires: 2012-09-02
Abstract
Abstract This file server system appears to the host computer to be a plurality of data storage devices which are directly addressable by the host computer using the native data management and access structures of the host computer. The file server however is an intelligent data storage subsystem that defines, manages and accesses synchronized sets of data and maintains these synchronized sets of data external from the host computer system's data management facilities in a manner that is completely transparent to the host computer. This is accomplished by the use of the snapshot application data group that extends the traditional sequential data set processing concept of generation data groups.
Inventors
- 👤 Jay S. Belsan
- 👤 Jeffrey S. Laughlin
- 👤 Mogens H. Pedersen
- 👤 Robert J. Raicer
- 👤 George A. Rudeseal
- 👤 Charles P. Schafer
- 👤 Barbara L. Steele
- 👤 Patrick J. Tomsula
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-24 23:05
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/10; Y; Y10; Y10S; Y10S707/00; Y10S707/99951; Y10S707/99952; Y10S707/99953; Y10S707/99955
Claims Analysis
Total Claims: 44
Claim 1
Independent Claim
248 words
A file server system for storing data sets for at least one data processor comprising: a plurality of data storage volumes, each of which is capable of storing at least one data set received from a data processor; means for maintaining data set pointers indicative of a set of data sets managed as a single data entity consisting of a plurality of interrelated ones of said data sets stored in first available memory space in a plurality of said data storage volumes in said file server system; means, responsive to the subsequent receipt of a data set access request from a data processor identifying one of said data sets stored in said set of data sets, for creating a new version of said set of data sets that contains said requested data set, independent of said data set requesting data processor, including: means for identifying a physical memory location of each data set in said set of data sets that contains said requested data set as specified by its data set pointer, means for generating a new data set pointer, duplicative of said data set pointer, as the data set pointer for said copy of each said data set in said set of data sets, means for maintaining data indicative of a correspondence between said data set pointers and said duplicative data set pointers, and means for providing said data set requesting data processor with access to said set of data sets via said duplicative data set pointers.
Claim 2
Dependent Claim
248 words
A file server system for storing data sets for at least one data processor comprising: a plurality of data storage volumes, each of which is capable of storing at least one data set received from a data processor; means for maintaining data set pointers indicative of a set of data sets managed as a single data entity consisting of a plurality of interrelated ones of said data sets stored in first available memory space in a plurality of said data storage volumes in said file server system; means, responsive to the subsequent receipt of a data set access request from a data processor identifying one of said data sets stored in said set of data sets, for creating a new version of said set of data sets that contains said requested data set, independent of said data set requesting data processor, including: means for identifying a physical memory location of each data set in said set of data sets that contains said requested data set as specified by its data set pointer, means for generating a new data set pointer, duplicative of said data set pointer, as the data set pointer for said copy of each said data set in said set of data sets, means for maintaining data indicative of a correspondence between said data set pointers and said duplicative data set pointers, and means for providing said data set requesting data processor with access to said set of data sets via said duplicative data set pointers.
Claim 3
Dependent Claim
101 words
The file server system of claim 1 wherein said creating means further comprises: means, responsive to said data set requesting data processor modifying data in said requested data set, for copying said requested data set to second available memory space in another of said plurality of data storage volumes; means for modifying said duplicative data set pointer to identify said second available memory space as a copy of said requested data set; and means for updating said data set pointer to indicate that said data set, stored in said physical memory location is a prior version of said requested data set.
Claim 4
Dependent Claim
41 words
The file server system of claim 2 wherein said copying means copies a one of said plurality of said data storage volumes containing said requested data set to second available memory space in another of said plurality of data storage volumes.
Claim 5
Dependent Claim
68 words
The file server system of claim 1 wherein said creating means is further responsive to a subsequent receipt of another data set access request from a data processor identifying one of said data sets stored in said set of data sets and said duplicative set of data sets, for creating a third version of said requested data set, independent of said subsequent data set access requesting data processor.
Claim 6
Dependent Claim
36 words
The file server system of claim 1 further comprising: means for storing threshold data indicative of the number of prior versions of each set of data sets that can be stored in said file server system.
Claim 7
Dependent Claim
38 words
The file server system of claim 5 further comprising: means for creating a series of said data set pointers, said series being indicative of a time ordered sequence of prior versions of a particular set of data sets.
Claim 8
Dependent Claim
58 words
The file server system of claim 6 further comprising: means, responsive to a generation of a next duplicative data set pointer for an identified set of data sets, for inserting said next duplicative data set pointer into a one of said series of data set pointers corresponding to said series associated with said identified set of data sets.
Claim 9
Dependent Claim
64 words
The file server system of claim 7 further comprising: means, responsive to said file server system writing a set of data sets identified by one of said duplicative data set pointers in a selected available memory space, for deleting an oldest data set pointer from said series of set of data sets pointers when the number of pointers in said series exceeds said threshold.
Claim 10
Dependent Claim
172 words
The file server system of claim 8 further comprising: cache memory means connected to and interconnecting said data processor and said data storage volumes for storing data sets transmitted therebetween; archive memory means connected to said cache memory means for storing data sets that were previously stored in said file server system by said data processor; means, responsive to the writing of a set of data sets in a selected available memory space, for comparing the number of set of data sets pointers in said series of set of data sets pointers, corresponding to said written set of data sets, to said threshold; means, responsive to said number of set of data sets pointers exceeding said threshold, for signifying an oldest set of data sets pointer in said series of set of data sets pointers as archivable; means for transferring said archivable set of data sets from said data storage volumes to said cache memory means; and means for rewriting said cached archivable set of data sets into said archive memory means.
Claim 11
Dependent Claim
61 words
The file server system of claim 9 further comprising: means, responsive to said file server system archiving a set of data sets identified by one of said set of data sets pointers in archive memory means, for deleting the set of data sets pointer corresponding to said archived set of data sets from said series of set of data sets pointers.
Claim 12
Dependent Claim
38 words
The file server system of claim 10 further comprising: means, responsive to said rewriting means, for storing data indicative of the memory location in said archive memory means in which said archived set of data sets is stored.
Claim 13
Dependent Claim
39 words
The file server system of claim 10 further comprising: means for determining the amount of said available memory space in said data storage volumes; and means for resetting said threshold as a function of said determined available memory space.
Claim 14
Dependent Claim
38 words
The file server system of claim 1 further comprising: means for storing data received from a user of said file server system indicative of the identity of each of said data sets in said set of data sets.
Claim 15
Dependent Claim
20 words
The file server system of claim 1 wherein said maintaining means operates independent of said at least one data processor.
Claim 16
Dependent Claim
75 words
The file server system of claim 1 wherein said maintaining means comprises: means for configuring said plurality of data storage devices into a plurality of virtual data storage volumes, each of said virtual data storage volumes being capable of storing at least one data set thereon; and means for presenting a data storage image of a selected one of said plurality of virtual data storage volumes to each of said at least one data processor.
Claim 17
Dependent Claim
41 words
The file server system of claim 15 wherein said presenting means transforms the format of said set of data sets containing said requested data set prior to enabling access to said requested data set by said data set requesting data processor.
Claim 18
Dependent Claim
52 words
The file server system of claim 15 wherein said creating means further comprises: means for transferring said set of data sets containing said requested data set from a first data storage volume to a second data storage volume, wherein said first and second data storage volumes have different physical data storage characteristics.
Claim 19
Dependent Claim
95 words
The file server system of claim 1 wherein said maintaining means comprises: means for configuring said plurality of data storage devices into m virtual data storage volumes, each of said virtual data storage volumes being capable of storing at least one data set thereon, wherein m is a positive integer greater than one; and means for presenting a data storage image of n data storage volumes directly addressable by said at least one data processor, to said at least one data processor, wherein n is a positive integer greater than zero and less than m.
Claim 20
Dependent Claim
85 words
The file server system of claim 18 wherein said maintaining means further comprises: means, responsive to a one of said at least one data processor requesting access to a selected data set in a set of data sets that is stored on a one of said m data storage volumes that is not directly addressable by said at least one data processor, for mounting said set of data sets containing said requested data set on a one of said n directly addressable data storage volumes.
Claim 21
Dependent Claim
56 words
The file server system of claim 19 wherein said maintaining means further comprises: means for transferring said set of data sets containing said requested data set from a first data storage volume having a first set of physical data storage characteristics to a second data storage volume having a second set of physical data storage characteristics.
Claim 22
Dependent Claim
194 words
The file server system of claim 1 wherein said plurality of data storage volumes comprises: a plurality of disk drives for storing data thereon, a number of said disk drives being configured into at least two redundancy groups, each said redundancy group including n+m of said plurality of disk drives, where n and m are both positive integers with n greater than 1 and m at least equal to 1; means for storing each of a plurality of data sets received from said data processor on successive ones of said n disk drives in a selected redundancy group; means, responsive to said storing means storing data sets on all n disk drives in said selected redundancy group, for generating m segments of data redundancy information for said data sets stored on said n disk drives; means for writing said m segments of redundancy data on to said m disk drives of said selected redundancy group; and means, responsive to said writing means, for generating a data set pointer for each of said data sets stored on said n disk drives identifying the physical memory location of each said data set in said redundancy group.
Claim 23
Dependent Claim
244 words
In a file server system having a plurality of data storage volumes, each of which is capable of storing at least one data set received from a data processor, a method for storing data sets for at least one data processor, comprising the steps of: maintaining data set pointers indicative of a set of data sets managed as a single data entity consisting of a plurality of interrelated ones of said data sets stored in first available memory space in a plurality of said data storage volumes in said file server system; creating, in response to the subsequent receipt of a data set access request from a data processor identifying one of said data sets stored in said set of data sets, a new version of said set of data sets that contains said requested data set, independent of said data set requesting data processor, including: identifying a physical memory location of each data set in said set of data sets that contains said requested data set as specified by its data set pointer, generating a new data set pointer, duplicative of said data set pointer, as the data set pointer for said copy of each said data set in said set of data sets, maintaining data indicative of a correspondence between said data set pointers and said duplicative data set pointers, and providing said data set requesting data processor with access to said set of data sets via said duplicative data set pointers.
Claim 24
Dependent Claim
244 words
In a file server system having a plurality of data storage volumes, each of which is capable of storing at least one data set received from a data processor, a method for storing data sets for at least one data processor, comprising the steps of: maintaining data set pointers indicative of a set of data sets managed as a single data entity consisting of a plurality of interrelated ones of said data sets stored in first available memory space in a plurality of said data storage volumes in said file server system; creating, in response to the subsequent receipt of a data set access request from a data processor identifying one of said data sets stored in said set of data sets, a new version of said set of data sets that contains said requested data set, independent of said data set requesting data processor, including: identifying a physical memory location of each data set in said set of data sets that contains said requested data set as specified by its data set pointer, generating a new data set pointer, duplicative of said data set pointer, as the data set pointer for said copy of each said data set in said set of data sets, maintaining data indicative of a correspondence between said data set pointers and said duplicative data set pointers, and providing said data set requesting data processor with access to said set of data sets via said duplicative data set pointers.
Claim 25
Dependent Claim
95 words
The method of claim 22 wherein said step of creating further comprises: copying, in response to said data set requesting data processor modifying data in said requested data set, said requested data set to second available memory space in another of said plurality of data storage volumes; modifying said duplicative data set pointer to identify said second available memory space as a copy of said requested data set; and updating said data set pointer to indicate that said data set, stored in said physical memory location is a prior version of said requested data set.
Claim 26
Dependent Claim
40 words
The method of claim 23 wherein said step of copying copies a one of said plurality of said data storage volumes containing said requested data set to second available memory space in another of said plurality of data storage volumes.
Claim 27
Dependent Claim
67 words
The method of claim 22 wherein said step of creating is further responsive to a subsequent receipt of another data set access request from a data processor identifying one of said data sets stored in said set of data sets and said duplicative set of data sets, for creating a third version of said requested data set, independent of said subsequent data set access requesting data processor.
Claim 28
Dependent Claim
35 words
The method of claim 22 further comprising the step of: storing threshold data indicative of the number of prior versions of each set of data sets that can be stored in said file server system.
Claim 29
Dependent Claim
37 words
The method of claim 26 further comprising the step of: creating a series of said data set pointers, said series being indicative of a time ordered sequence of prior versions of a particular set of data sets.
Claim 30
Dependent Claim
58 words
The method of claim 27 further comprising the step of: inserting, in response to a generation of a next duplicative data set pointer for an identified set of data sets, said next duplicative data set pointer into a one of said series of data set pointers corresponding to said series associated with said identified set of data sets.
Claim 31
Dependent Claim
64 words
The method of claim 28 further comprising the step of: deleting, in response to said file server system writing a set of data sets identified by one of said duplicative data set pointers in a selected available memory space, an oldest data set pointer from said series of set of data sets pointers when the number of pointers in said series exceeds said threshold.
Claim 32
Dependent Claim
173 words
The method of claim 29, wherein said file server system includes a cache memory connected to and interconnecting said data processor and said data storage volumes for storing data sets transmitted therebetween and an archive memory connected to said cache memory for storing data sets that were previously stored in said file server system by said data processor, the method further comprising the steps of: comparing, in response to the writing of a set of data sets in a selected available memory space, the number of set of data sets pointers in said series of set of data sets pointers, corresponding to said written set of data sets, to said threshold; signifying, in response to said number of set of data sets pointers exceeding said threshold, an oldest set of data sets pointer in said series of set of data sets pointers as archivable; transferring said archivable set of data sets from said data storage volumes to said cache memory; and rewriting said cached archivable set of data sets into said archive memory.
Claim 33
Dependent Claim
60 words
The method of claim 30 further comprising the step of: deleting, in response to said file server system archiving a set of data sets identified by one of said set of data sets pointers in archive memory, the set of data sets pointer corresponding to said archived set of data sets from said series of set of data sets pointers.
Claim 34
Dependent Claim
38 words
The method of claim 31 further comprising the step of: storing, in response to said step of rewriting, data indicative of the memory location in said archive memory in which said archived set of data sets is stored.
Claim 35
Dependent Claim
36 words
The method of claim 31 further comprising the steps of: determining the amount of said available memory space in said data storage volumes; and resetting said threshold as a function of said determined available memory space.
Claim 36
Dependent Claim
37 words
The method of claim 22 further comprising the step of: storing data received from a user of said file server system indicative of the identity of each of said data sets in said set of data sets.
Claim 37
Dependent Claim
19 words
The method of claim 22 wherein said step of maintaining operates independent of said at least one data processor.
Claim 38
Dependent Claim
70 words
The method of claim 22 wherein said step of maintaining comprises: configuring said plurality of data storage devices into a plurality of virtual data storage volumes, each of said virtual data storage volumes being capable of storing at least one data set thereon; and presenting a data storage image of a selected one of said plurality of virtual data storage volumes to each of said at least one data processor.
Claim 39
Dependent Claim
40 words
The method of claim 36 wherein said step of presenting transforms the format of said set of data sets containing said requested data set prior to enabling access to said requested data set by said data set requesting data processor.
Claim 40
Dependent Claim
49 words
The method of claim 36 wherein said step of creating further comprises: transferring said set of data sets containing said requested data set from a first data storage volume to a second data storage volume, wherein said first and second data storage volumes have different physical data storage characteristics.
Claim 41
Dependent Claim
90 words
The method of claim 22 wherein said step of maintaining comprises: configuring said plurality of data storage devices into m virtual data storage volumes, each of said virtual data storage volumes being capable of storing at least one data set thereon, wherein m is a positive integer greater than one; and presenting a data storage image of n data storage volumes directly addressable by said at least one data processor, to said at least one data processor, wherein n is a positive integer greater than zero and less than m.
Claim 42
Dependent Claim
83 words
The method of claim 39 wherein said step of maintaining further comprises: mounting, in response to a one of said at least one data processor requesting access to a selected data set in a set of data sets that is stored on a one of said m data storage volumes that is not directly addressable by said at least one data processor, said set of data sets containing said requested data set on a one of said n directly addressable data storage volumes.
Claim 43
Dependent Claim
53 words
The method of claim 40 wherein said step of maintaining further comprises: transferring said set of data sets containing said requested data set from a first data storage volume having a first set of physical data storage characteristics to a second data storage volume having a second set of physical data storage characteristics.
Claim 44
Dependent Claim
194 words
The method of claim 22 wherein said plurality of data storage volumes comprises a plurality of disk drives for storing data thereon, a number of said disk drives being configured into at least two redundancy groups, each said redundancy group including n+m of said plurality of disk drives, where n and m are both positive integers with n greater than 1 and m at least equal to 1, said method further comprises the steps of: storing each of a plurality of data sets received from said data processor on successive ones of said n disk drives in a selected redundancy group; generating, in response to said step of storing data sets on all n disk drives in said selected redundancy group, m segments of data redundancy information for said data sets stored on said n disk drives; writing said m segments of redundancy data on to said m disk drives of said selected redundancy group; and generating, in response to said step of writing, a data set pointer for each of said data sets stored on said n disk drives identifying the physical memory location of each said data set in said redundancy group.
References Cited (Backward Citations)
US4627019A
Cited
US5247647A
Cited
US5212789A
Cited
US5124987A
Cited
US5193184A
Cited
US5210866A
Cited
US5155835A
Cited
US5278979A
Cited
US5287496A
Cited
US5239659A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1998-04-03 | 1998-10-03 | 1999-04-04 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2002-04-03 | 2002-10-03 | 2003-04-04 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2006-04-03 | 2006-10-03 | 2007-04-04 | $7700.00 | Window Closed / Lapsed |