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

Logical volume manager and method having enhanced update capability with dynamic allocation of storage and minimal storage of metadata information

Assignee: International Business Machines Corp
•
Filing: 1997-02-25
•
Granted: 1999-04-27
•
Expires: 2017-02-25
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An apparatus, a method, and a computer program product conceptually provide a logical unit of undivided data storage that spans physical storage device boundaries. The apparatus manages the logical unit of undivided storage using metadata information stored on the physical storage devices. Advantageously, the apparatus replicates a minimum portion of the metadata information across all of the data storage devices and favors writing metadata only in the devices where the information is required to operate. In a preferred embodiment, a logical unit of undivided storage is created by defining a logical volume and allocating portions of available physical data storage devices thereto in order to provide a minimum logical volume size. Metadata is generated and stored on the data storage devices to provide detailed information about the portions of each data storage device that have been allocated to the logical volume. After initialization, the size of the logical volume can be automatically changed such that portions of the data storage devices are allocated to or deallocated from the logical volume. Following an allocation or deallocation operation, the metadata stored on the data storage devices is minimally updated only on the data storage devices affected by the operation. The metadata on unaffected storage devices is not changed such that processing time is improved. In another embodiment, the metadata may be differentiated into two types, global and local. Global metadata is maintained in a fully replicated way across all of the data storage devices. Local metadata containing information specific to a particular data storage device is maintained on that storage device but is not replicated on other storage devices. In this way, data storage space availability is improved. In still another embodiment, an in-memory data structure is constructed to maintain information derived from the stored local metadata. Full operation is possible despite failed or unavailable physical data storage devices.

Inventors

  • 👤 Leon Daniel Baranovsky
  • 👤 Luis Felipe Cabrera
  • 👤 Chiehshow Chin
  • 👤 Robert Rees

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-02 09:51
CPC Classifications
G; G06; G06F; G06F3/00; G06F3/06; G06F3/0601; G06F3/0602; G06F3/0608; G06F3/0628; G06F3/0638; G06F3/0668; G06F3/0671; G06F3/0673; G06F3/0674; Y; Y10; Y10S; Y10S707/00; Y10S707/99951; Y10S707/99952; Y10S707/99953; Y10S707/99956

Claims Analysis

Total Claims: 33
Claim 1
Independent Claim 133 words
In a programmed, general purpose digital computer having a memory and coupled to data storage devices, a logical volume manager having computer software operative for: creating a logical unit of undivided storage; allocating portions of said data storage devices to said logical unit of undivided storage; storing metadata on said data storage devices containing information about portions of said data storage devices that have been allocated to said logical unit of undivided storage; automatically changing the size of said logical unit of undivided storage whereby portions of said data storage devices are allocated to or deallocated from said logical unit of undivided storage; and updating said metadata after automatically changing the size of said logical unit of undivided storage and only on said data storage devices affected by the automatic change of size.
Claim 2
Dependent Claim 133 words
In a programmed, general purpose digital computer having a memory and coupled to data storage devices, a logical volume manager having computer software operative for: creating a logical unit of undivided storage; allocating portions of said data storage devices to said logical unit of undivided storage; storing metadata on said data storage devices containing information about portions of said data storage devices that have been allocated to said logical unit of undivided storage; automatically changing the size of said logical unit of undivided storage whereby portions of said data storage devices are allocated to or deallocated from said logical unit of undivided storage; and updating said metadata after automatically changing the size of said logical unit of undivided storage and only on said data storage devices affected by the automatic change of size.
Claim 3
Dependent Claim 38 words
The logical volume manager of claim 1 wherein said computer software is further operative for constructing a map in said memory for translating between addresses in said logical unit of undivided storage and locations on said storage devices.
Claim 4
Dependent Claim 35 words
The logical volume manager of claim 1 wherein said computer software is further operative for constructing a data structure in said memory containing information derived from said metadata on each of said data storage devices.
Claim 5
Dependent Claim 39 words
The logical volume manager of claim 3 wherein said computer software is further operative for updating said data structure in said memory following operation of said means for automatically changing the size of said logical unit of undivided storage.
Claim 6
Dependent Claim 45 words
The logical volume manager of claim 1 wherein said metadata includes global metadata stored on each of said storage devices and local metadata unique to each of said data storage devices, and wherein said computer software is further operative for updating only said local metadata.
Claim 7
Dependent Claim 92 words
The logical volume manager of claim 5 wherein said computer software is further operative for defining said data storage devices as physical volumes that are part of a physical volume group and for defining each physical volume as a plurality of physical clusters, and wherein said computer software is further operative for defining said logical unit of undivided storage as a logical volume having a plurality of logical clusters corresponding to one or more of said physical clusters in one or more of said physical volumes of a single physical volume group.
Claim 8
Dependent Claim 29 words
The logical volume manager of claim 6 wherein said global metadata includes a physical volume group metadata map, a logical volume symbolic name map and a recovery log map.
Claim 9
Dependent Claim 39 words
The logical volume manager of claim 6 wherein said local metadata includes a physical volume metadata map, a logical volume metadata map, a physical cluster metadata map, a mirror write consistency bit array map, and a sector relocation map.
Claim 10
Dependent Claim 36 words
The logical volume manager of claim 6 wherein said computer software is further operative for constructing a map in said memory for translating between addresses in said logical volume and storage locations on said physical volumes.
Claim 11
Dependent Claim 41 words
The logical volume manager of claim 9 wherein said map in said memory is a relative block address map for mapping a sector number relative to an origin of a logical volume to an absolute sector number on a physical volume.
Claim 12
Independent Claim 157 words
A method for managing logical volumes executed by a programmed, general purpose digital computer having a memory and coupled to data storage devices, said method comprising the steps of: creating a logical unit of undivided storage; allocating portions of said data storage devices to said logical unit of undivided storage; storing metadata on said data storage devices containing information about portions of said data storage devices that have been allocated to said logical unit of undivided storage; automatically changing the size of said logical unit of undivided storage whereby portions of said data storage devices are allocated to or deallocated from said logical unit of undivided storage; and updating said metadata following operation of said step of automatically changing the size of said logical unit of undivided storage, said step of updating said metadata operating only on said data storage devices affected by said step of automatically changing the size of said logical unit of undivided storage.
Claim 13
Independent Claim 157 words
A method for managing logical volumes executed by a programmed, general purpose digital computer having a memory and coupled to data storage devices, said method comprising the steps of: creating a logical unit of undivided storage; allocating portions of said data storage devices to said logical unit of undivided storage; storing metadata on said data storage devices containing information about portions of said data storage devices that have been allocated to said logical unit of undivided storage; automatically changing the size of said logical unit of undivided storage whereby portions of said data storage devices are allocated to or deallocated from said logical unit of undivided storage; and updating said metadata following operation of said step of automatically changing the size of said logical unit of undivided storage, said step of updating said metadata operating only on said data storage devices affected by said step of automatically changing the size of said logical unit of undivided storage.
Claim 14
Dependent Claim 34 words
The method of claim 11 further comprising the step of constructing a map in said memory for translating between addresses in said logical unit of undivided storage and locations on said data storage devices.
Claim 15
Dependent Claim 30 words
The method of claim 11 further comprising the step of constructing a data structure in said memory containing information derived from said metadata on each of said data storage devices.
Claim 16
Dependent Claim 34 words
The method of claim 13 further comprising the step of updating said data structure in said memory following operation of said step of automatically changing the size of said logical unit of undivided storage.
Claim 17
Dependent Claim 62 words
The method of claim 11 wherein said metadata includes global metadata stored on each of said data storage devices and local metadata unique to each of said data storage devices, and wherein only said local metadata is updated by said step of updating said metadata following operation of said step of automatically changing the size of said logical unit of undivided storage.
Claim 18
Dependent Claim 86 words
The method of claim 15 further comprising the step of defining said data storage devices as physical volumes that are part of a physical volume group and for defining each physical volume as a plurality of physical clusters, and said method further comprising the step of defining said logical unit of undivided storage as a logical volume having a plurality of logical clusters corresponding to one or more of said physical clusters in one or more of said physical volumes of a single physical volume group.
Claim 19
Dependent Claim 27 words
The method of claim 16 wherein said global metadata includes a physical volume group metadata map, a logical volume symbolic name map and a recovery log map.
Claim 20
Dependent Claim 37 words
The method of claim 16 wherein said local metadata includes a physical volume metadata map, a logical volume metadata map, a physical cluster metadata map, a mirror write consistency bit array map, and a sector relocation map.
Claim 21
Dependent Claim 31 words
The method of claim 16 further including the step of constructing a map in said memory for translating between addresses in said logical volume and storage locations on said physical volumes.
Claim 22
Dependent Claim 39 words
The method of claim 19 wherein said map in said memory is a relative block address map for mapping a sector number relative to an origin of a logical volume to an absolute sector number on a physical volume.
Claim 23
Dependent Claim 189 words
A computer program product for use in a programmed, general purpose digital computer having a memory and coupled to data storage devices, said computer program product comprising: a data storage medium; software recorded on said data storage medium and executable for creating a logical unit of undivided storage; software recorded on said data storage medium and executable for allocating portions of said data storage devices to said logical unit of undivided storage; software recorded on said data storage medium and executable for storing metadata on said data storage devices containing information about portions of said data storage devices that have been allocated to said logical unit of undivided storage; software recorded on said data storage medium and executable for automatically changing the size of said logical unit of undivided storage whereby portions of said data storage devices are allocated to or deallocated from said logical unit of undivided storage; and software recorded on said data storage medium and executable for updating said metadata after automatically changing the size of said logical unit of undivided storage and only on said data storage devices affected by the automatic change of size.
Claim 24
Dependent Claim 189 words
A computer program product for use in a programmed, general purpose digital computer having a memory and coupled to data storage devices, said computer program product comprising: a data storage medium; software recorded on said data storage medium and executable for creating a logical unit of undivided storage; software recorded on said data storage medium and executable for allocating portions of said data storage devices to said logical unit of undivided storage; software recorded on said data storage medium and executable for storing metadata on said data storage devices containing information about portions of said data storage devices that have been allocated to said logical unit of undivided storage; software recorded on said data storage medium and executable for automatically changing the size of said logical unit of undivided storage whereby portions of said data storage devices are allocated to or deallocated from said logical unit of undivided storage; and software recorded on said data storage medium and executable for updating said metadata after automatically changing the size of said logical unit of undivided storage and only on said data storage devices affected by the automatic change of size.
Claim 25
Dependent Claim 43 words
The computer program product of claim 21 further comprising software recorded on said data storage medium and executable for constructing a map in said memory for translating between addresses in said logical unit of undivided storage and locations on said data storage devices.
Claim 26
Dependent Claim 39 words
The computer program product of claim 21 further comprising software recorded on said data storage medium and executable for constructing a data structure in said memory containing information derived from said metadata on each of said data storage devices.
Claim 27
Dependent Claim 38 words
The computer program product of claim 23 further comprising software recorded on said data storage medium and executable for updating said data structure in said memory after automatically changing the size of said logical unit of undivided storage.
Claim 28
Dependent Claim 48 words
The computer program product of claim 21 wherein said metadata includes global metadata stored on each of said data storage devices and local metadata unique to each of said data storage devices, and wherein only said local metadata is updated by said software executable for updating said metadata.
Claim 29
Dependent Claim 104 words
The computer program product of claim 25 further comprising software recorded on said data storage medium and executable for defining said data storage devices as physical volumes that are part of a physical volume group and for defining each physical volume as a plurality of physical clusters, and said computer program product further comprising software recorded on said data storage medium and executable for defining said logical unit of undivided storage as a logical volume having a plurality of logical clusters corresponding to one or more of said physical clusters in one or more of said physical volumes of a single physical volume group.
Claim 30
Dependent Claim 29 words
The computer program product of claim 26 wherein said global metadata includes a physical volume group metadata map, a logical volume symbolic name map and a recovery log map.
Claim 31
Dependent Claim 39 words
The computer program product of claim 26 wherein said local metadata includes a physical volume metadata map, a logical volume metadata map, a physical cluster metadata map, a mirror write consistency bit array map, and a sector relocation map.
Claim 32
Dependent Claim 33 words
The computer program product of claim 26 further including software executable for constructing a map in said memory for translating between addresses in said logical volume and storage locations on said physical volumes.
Claim 33
Dependent Claim 41 words
The computer program product of claim 29 wherein said map in said memory is a relative block address map for mapping a sector number relative to an origin of a logical volume to an absolute sector number on a physical volume.

References Cited (Backward Citations)

US5129088A Cited
EP0482853A2 Cited
US5430855A Cited
US5403639A Cited
US5435004A Cited
US5761526A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-04-26 2002-10-26 2003-04-27 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-04-26 2006-10-26 2007-04-27 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-04-26 2010-10-26 2011-04-27 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag