Legal claims defining the scope of protection, as filed with the USPTO.
1. A method of managing a virtual data storage object in a computer system including at least one host and at least one storage device that stores data written by the at least one host, the at least one storage device presenting at least one storage disk to the at least one host as a storage resource, the at least one host including at least one of a logical volume manager (LVM) that presents at least one logical volume to other layers in the host as a storage resource and a file system that presents at least one file to other layers in the host as a storage resource, the method comprising acts of: (A) creating the virtual data storage object to be independent of any particular host and any particular storage device; (B) creating the virtual data storage object so that at least one of the at least one logical volume and the at least one file is employed as a storage resource to store data stored to the virtual data storage object; (C) receiving a set of parameters that defines a plurality of data images for the virtual data storage object and a manner in which the plurality of data images are interrelated; and (D) automatically assigning the storage resources within the computer system to store each of the plurality of data images.
2. The method of claim 1 , further including an act of: (E) providing the host with a software layer that presents the virtual data storage object to other layers in the host as a storage disk.
3. The method of claim 1 , further including an act of: (E) providing the host with a software layer that presents the virtual data storage object to other layers in the host as a logical volume.
4. The method of claim 1 , further including an act of: (E) providing the host with a software layer that presents the virtual data storage object to other layers in the host as a file.
5. The method of claim 1 , further including acts of: (E) creating metadata defining the virtual data storage object; and (F) distributing the metadata about the computer system so that there is no central location that is the exclusive resource for accessing the metadata.
6. The method of claim 5 , wherein the at least one storage device comprises a plurality of storage devices, and wherein the act (F) comprises an act of distributing the metadata among each of the plurality of storage devices that stores data stored to the virtual data storage object.
7. The method of claim 6 , wherein the act (F) comprises an act of distributing only a subset of the metadata to at least one of the plurality of storage devices.
8. The method of claim 5 , wherein the at least one host comprises a plurality of hosts, and wherein the act (F) comprises an act of distributing the metadata among each of the plurality of hosts that accesses the virtual data storage object.
9. The method of claim 8 , wherein the act (F) comprises an act of distributing only a subset of the metadata to at least one of the plurality of hosts.
10. The method of claim 5 , wherein the at least one storage device comprises a plurality of storage devices, wherein the at least one host comprises a plurality of hosts, wherein the act (E) comprises an act of creating the metadata on a control station, and wherein the act (F) comprises an act of transmitting the metadata from the control station to the plurality of storage devices, and from the plurality of storage devices to the plurality of hosts.
11. The method of claim 1 , wherein the act (B) comprises an act of creating the virtual data storage object to comprise at least first and second data images, and wherein the method further comprises acts of presenting each of the first and second data images to one of the plurality of hosts and performing a selection process within the one of the plurality of hosts to select which of the first and second data images to employ in accessing the virtual data storage object.
12. The method of claim 1 , wherein the act (B) comprises an act of creating the virtual data storage object so that the at least one logical volume is employed as a storage resource to store data stored to the virtual data storage object.
13. The method of claim 1 , wherein the act (B) comprises an act of creating the virtual data storage object so that the at least one file is employed as a storage resource to store data stored to the virtual data storage object.
14. The method of claim 1 , wherein the at least one host comprises first and second hosts, wherein the first host comprises a first LVM and the second host comprises a second LVM, wherein the act (B) comprises an act of creating the virtual data storage object to comprise at least first and second data images, with the first data image being stored on a logical volume presented by the first LVM and the second data image being stored on a logical volume presented by the second LVM.
15. The method of claim 1 , wherein the at least one logical volume comprises a plurality of logical volumes, wherein the at least one storage disk comprises a plurality of storage disks, and wherein the act (B) comprises an act of creating the virtual data storage object to comprise at least first and second data images, with the first data image being stored on one of the plurality of logical volumes and the second data image being stored on one of the plurality of storage disks.
16. The method of claim 1 , wherein the at least one storage device comprises a plurality of storage devices, and wherein the act (D) comprises an act of considering performance and functionality characteristics of the plurality of storage devices in making the automatic assignment.
17. A method of managing a virtual data storage object in a computer system including at least one host and at least one storage device that stores data written by the at least one host, the at least one storage device presenting at least one storage disk to the at least one host as a storage resource, the at least one host including at least one of a logical volume manager (LVM) that presents at least one logical volume to other layers in the host as a storage resource and a file system that presents at least one file to other layers in the host as a storage resource the method comprising acts of: (A) creating the virtual data storage object to be independent of any particular host and any particular storage device; (B) creating the virtual data storage object so that at least one of the at least one logical volume and the at least one file is employed as a storage resource to store data stored to the virtual data storage object; (C) creating metadata defining the virtual data storage object; and (D) distributing the metadata about the computer system so that there is no central location that is the exclusive resource for accessing the metadata; wherein the at least one storage device comprises a plurality of storage devices, wherein the at least one host comprises a plurality of hosts, wherein the act (C) comprises an act of creating the metadata on a control station, and wherein the act (D) comprises an act of transmitting the metadata from the control station to the plurality of storage devices, and from the plurality of storage devices to the plurality of hosts; and wherein the act (A) comprises an act of creating the virtual data storage object to comprise a plurality of data images, wherein the act (D) comprises an act of storing within each one of the plurality of storage devices a list of which ones of the plurality of hosts has accessed a data image stored within the one of the plurality of storage devices, and when the metadata on the one of the plurality of storage devices is updated, transmitting updated metadata from the one of the plurality of storage devices to the ones of the plurality of hosts in its list.
18. A computer readable medium encoded with a program for execution on a computer system including at least one host and at least one storage device that stores data written by the at least one host, the at least one storage device presenting at least one storage disk to the at least one host as a storage resource, the at least one host including at least one of a logical volume manager (LVM) that presents at least one logical volume to other layers in the host as a storage resource and a file system that presents at least one file to other layers in the host as a storage resource, the program, when executed on the computer system, performs a method of managing a virtual data storage object, the method comprising acts of: (A) creating the virtual data storage object to be independent of any particular host and any particular storage device; (B) creating the virtual data storage object so that at least one of the at least one logical volume and the at least one file is employed as a storage resource to store data stored to the virtual data storage object; (C) receiving a set of parameters that defines a plurality of data images for the virtual data storage object and a manner in which the plurality of data images are interrelated; and (D) automatically assigning the storage resources within the computer system to store each of the plurality of data images.
19. The computer readable medium of claim 18 , wherein the method further includes acts of: (E) creating metadata defining the virtual data storage object; and (F) distributing the metadata about the computer system so that there is no central location that is the exclusive resource for accessing the metadata.
20. The computer readable medium of claim 19 , wherein the at least one storage device comprises a plurality of storage devices, and wherein the act (F) comprises an act of distributing the metadata among each of the plurality of storage devices that stores data stored to the virtual data storage object.
21. The computer readable medium of claim 20 , wherein the act (F) comprises an act of distributing only a subset of the metadata to at least one of the plurality of storage devices.
22. The computer readable medium of claim 19 , wherein the at least one host comprises a plurality of hosts, and wherein the act (F) comprises an act of distributing the metadata among each of the plurality of hosts that accesses the virtual data storage object.
23. The computer readable medium of claim 22 , wherein the act (F) comprises an act of distributing only a subset of the metadata to at least one of the plurality of hosts.
24. The computer readable medium of claim 18 , wherein the act (B) comprises an act of creating the virtual data storage object so that the at least one logical volume is employed as a storage resource to store data stored to the virtual data storage object.
25. The computer readable medium of claim 18 , wherein the act (B) comprises an act of creating the virtual data storage object so that the at least one file is employed as a storage resource to store data stored to the virtual data storage object.
26. The computer readable medium of claim 18 , wherein the at least one host comprises first and second hosts, wherein the first host comprises a first LVM and the second host comprises a second LVM, wherein the act (B) comprises an act of creating the virtual data storage object to comprise at least first and second data images, with the first data image being stored on a logical volume presented by the first LVM and the second data image being stored on a logical volume presented by the second LVM.
27. The computer readable medium of claim 18 , wherein the at least one logical volume comprises a plurality of logical volumes, wherein the at least one storage disk comprises a plurality of storage disks, and wherein the act (B) comprises an act of creating the virtual data storage object to comprise at least first and second data images, with the first data image being stored on one of the plurality of logical volumes and the second data image being stored on one of the plurality of storage disks.
28. The computer readable medium of claim 18 , wherein the at least one storage device comprises a plurality of storage devices, and wherein the act (D) comprises an act of considering performance and functionality characteristics of the plurality of storage devices in making the automatic assignment.
29. A control station for use in a computer system including at least one host and at least one storage device that stores data written by the at least one host, the at least one storage device presenting at least one storage disk to the at least one host as a storage resource, the at least one host including at least one of a logical volume manager (LVM) that presents at least one logical volume to other layers in the host as a storage resource or a file system that presents at least one file to other layers in the host as a storage resource, the control station to manage a virtual data storage object, the control station comprising: a storage medium; and at least one controller that creates the virtual data storage object to be independent of any particular host and any particular storage device, and so that at least one of the at least one logical volume and the at least one file is employed as a storage resource to store data stored to the virtual data storage object; wherein the at least one controller receives a set of parameters that defines a plurality of data images for the virtual data storage object and a manner in which the plurality of data images are interrelated, and automatically assigns the storage resources within the computer system to store each of the plurality of data images.
30. The control station of claim 29 , wherein the at least one controller creates metadata defining the virtual data storage object and distributes the metadata about the computer system so that there is no central location that is the exclusive resource for accessing the metadata.
31. The control station of claim 30 , wherein the at least one storage device comprises a plurality of storage devices, and wherein the at least one controller distributes the metadata among each of the plurality of storage devices that stores data stored to the virtual data storage object.
32. The control station of claim 31 , wherein the at least one controller distributes only a subset of the metadata to at least one of the plurality of storage devices.
33. The control station of claim 30 , wherein the at least one host comprises a plurality of hosts, and wherein the at least one controller distributes the metadata among each of the plurality of hosts that accesses the virtual data storage object.
34. The control station of claim 33 , wherein the at least one controller distributes only a subset of the metadata to at least one of the plurality of hosts.
35. The control station of claim 29 , wherein the at least one controller creates the virtual data storage object so that the at least one logical volume is employed as a storage resource to store data stored to the virtual data storage object.
36. The control station of claim 29 , wherein the at least one controller creates the virtual data storage object so that the at least one file is employed as a storage resource to store data stored to the virtual data storage object.
37. The control station of claim 29 , wherein the at least one host comprises first and second hosts, wherein the first host comprises a first LVM and the second host comprises a second LVM, wherein the at least one controller creates the virtual data storage object to comprise at least first and second data images, with the first data image being stored on a logical volume presented by the first LVM and the second data image being stored on a logical volume presented by the second LVM.
38. The control station of claim 29 , wherein the at least one logical volume comprises a plurality of logical volumes, wherein the at least one storage disk comprises a plurality of storage disks, and wherein the at least one controller creates the virtual data storage object to comprise at least first and second data images, with the first data image being stored on at least in part on one of the plurality of logical volumes and the second data image being stored at least in part on one of the plurality of storage disks.
39. The control station of claim 29 , wherein the at least one storage device comprises a plurality of storage devices, and wherein the at least one controller considers performance and functionality characteristics of the plurality of storage devices in making the automatic assignment.
40. The control station of claim 29 , wherein the at least one controller includes means for creating the virtual data storage object to be independent of any particular host and any particular storage device, and so that at least one of the at least one logical volume and the at least one file is employed as a storage resource to store data stored to the virtual data storage object.
41. A host computer for use in a computer system including the host computer and at least one storage device that stores data written by the host computer, the at least one storage device presenting at least one storage disk to the host computer as a storage resource, the host computer comprising: at least one software layer that issues access requests to a virtual data storage object that is independent of the host computer and any particular storage device; at least one of a logical volume manager (LVM) that presents at least one logical volume to other software layers in the host as a storage resource or a file system that presents at least one file to other software layers in the host as a storage resource; and at least one conversion layer that converts at least one access request directed to the virtual data storage object to an access request directed to at least one of the at least one logical volume and the at least one file; wherein the virtual data storage object comprises at least first and second data images; wherein the host computer comprises a logical volume manager that presents a plurality of logical volumes to other layers in the host computer; wherein the at least one storage device presents a plurality of storage disks to the host computer; and wherein the at least one conversion layer converts an access request directed to the virtual data storage object to an access request directed to one of the first and second data images, converts an access request directed to the first data image to an access request directed to one of the plurality of logical volumes, and converts an access request directed to the second data image to an access request directed to one of the plurality of storage disks.
42. The host computer of claim 41 , further including a presenter layer that presents the virtual data storage object to other layers in the host as a storage disk.
43. The host computer of claim 41 , further including an LVM that presents the virtual data storage object to other layers in the host as a logical volume.
44. The host computer of claim 41 , further including a file system that presents the virtual data storage object to other layers in the host as a file.
45. The host computer of claim 41 , wherein the virtual data storage object is defined by metadata, and wherein the host computer further includes a storage medium that stores at least some of the metadata defining the virtual data storage object.
46. The host computer of claim 45 , wherein the storage medium stores only a subset of the metadata that defines the virtual data storage object.
47. The host computer of claim 41 , wherein the host includes at least one controller that performs a selection process to select which of the first and second data images to employ in responding to an access request to the virtual data storage object.
48. The host computer of claim 41 , wherein the host computer comprises the logical volume manager (LVM) that presents at least one logical volume to other software layers in the host as a storage resource, and wherein the at least one conversion layer converts at least one of the access requests directed to the virtual data storage object to an access request directed to at least one logical volume.
49. The host computer of claim 41 , wherein the host computer comprises the file system that presents at least one file to other software layers in the host as a storage resource, and wherein the at least one conversion layer converts at least one of the access requests directed to the virtual data storage object to an access request directed to at least one file.
50. The host computer of claim 41 , wherein the at least one conversion layer includes means for converting at least one access request directed to the virtual data storage object to an access request directed to at least one of the at least one logical volume and the at least one file.
51. A method for use in a computer system including at least one host and at least one storage device that stores data written by the at least one host, the method comprising acts of: (A) creating metadata defining a virtual data storage object that is independent of any particular host and any particular storage device; and (B) distributing the metadata about the computer system so that there is no central location that is the exclusive resource for accessing the metadata; wherein the at least one storage device comprises a plurality of storage devices, wherein the at least one host comprises a plurality of hosts, wherein the act (A) comprises an act of creating the metadata on a control station, and wherein the act (B) comprises an act of transmitting the metadata from the control station to the plurality of storage devices, and from the plurality of storage devices to the plurality of hosts; and wherein the virtual data storage object comprises a plurality of data images, wherein the act (B) comprises an act of storing within each one of the plurality of storage devices a list of which ones of the plurality of hosts has accessed a data image stored within the one of the plurality of storage devices, and when the metadata on the one of the plurality of storage devices is updated, transmitting updated metadata from the one of the plurality of storage devices to the ones of the plurality of hosts in its list.
52. The method of claim 51 , wherein the at least one storage device comprises a plurality of storage devices, and wherein the act (B) comprises an act of distributing the metadata among each of the plurality of storage devices that stores data stored to the virtual data storage object.
53. The method of claim 51 , wherein the act (B) comprises an act of distributing only a subset of the metadata to at least one of the plurality of storage devices.
54. The method of claim 51 , wherein the at least one host comprises a plurality of hosts, and wherein the act (B) comprises an act of distributing the metadata among each of the plurality of hosts that accesses the virtual data storage object.
55. The method of claim 54 , wherein the act (B) comprises an act of distributing only a subset of the metadata to at least one of the plurality of hosts.
56. A method for use in a computer system including at least one host and at least one storage device that stores data written by the at least one host, the method comprising acts of: (A) creating metadata defining a virtual data storage object that is independent of any particular host and any particular storage device; and (B) distributing the metadata about the computer system so that there is no central location that is the exclusive resource for accessing the metadata; wherein the act (A) includes acts of: receiving a set of parameters that defines a plurality of data images for the virtual data storage object and a manner in which the plurality of data images are interrelated; and automatically assigning the storage resources within the computer system to store each of the plurality of data images.
57. The method of claim 56 , wherein the at least one storage device comprises a plurality of storage devices, wherein the at least one host comprises a plurality of hosts, wherein the act (A) comprises an act of creating the metadata on a control station, and wherein the act (B) comprises an act of transmitting the metadata from the control station to the plurality of storage devices, and from the plurality of storage devices to the plurality of hosts.
58. The method of claim 56 , wherein the at least one storage device comprises a plurality of storage devices, and wherein the act of automatically assigning comprises an act of considering performance and functionality characteristics of the plurality of storage devices in making the automatic assignment.
59. A computer readable medium encoded with a program for execution on a computer system including at least one host and at least one storage device that stores data written by the at least one host, the program, when executed on the computer system performs a method comprising acts of: (A) creating metadata defining a virtual data storage object that is independent of any particular host and any particular storage device; and (B) distributing the metadata about the computer system so that there is no central location that is the exclusive resource for accessing the metadata; wherein the at least one storage device comprises a plurality of storage devices, wherein the at least one host comprises a plurality of hosts, wherein the act (A) comprises an act of creating the metadata on a control station, and wherein the act (B) comprises an act of transmitting the metadata from the control station to the plurality of storage devices, and from the plurality of storage devices to the plurality of hosts; and wherein the virtual data storage object comprises a plurality of data images, wherein the act (B) comprises an act of storing within each one of the plurality of storage devices a list of which ones of the plurality of hosts has accessed a data image stored within the one of the plurality of storage devices, and when the metadata on the one of the plurality of storage devices is updated, transmitting updated metadata from the one of the plurality of storage devices to the ones of the plurality of hosts in its list.
60. A computer readable medium encoded with a program for execution on a computer system including at least one host and at least one storage device that stores data written by the at least one host, the program, when executed on the computer system, performs a method comprising acts of: (A) creating metadata defining a virtual data storage object that is independent of any particular host and any Particular storage device; and (B) distributing the metadata about the computer system so that there is no central location that is the exclusive resource for accessing the metadata; wherein the act (A) includes acts of: receiving a set of parameters that defines a plurality of data images for the virtual data storage object and a manner in which the plurality of data images are interrelated; and automatically assigning the storage resources within the computer system to store each of the plurality of data images.
61. The computer readable medium of claim 60 , wherein the at least one storage device comprises a plurality of storage devices, and wherein the act (B) comprises an act of distributing the metadata among each of the plurality of storage devices that stores data stored to the virtual data storage object.
62. The computer readable medium of claim 60 , wherein the act (B) comprises an act of distributing only a subset of the metadata to at least one of the plurality of storage devices.
63. The computer readable medium of claim 60 , wherein the at least one host comprises a plurality of hosts, and wherein the act (B) comprises an act of distributing the metadata among each of the plurality of hosts that accesses the virtual data storage object.
64. The computer readable medium of claim 63 , wherein the act (B) comprises an act of distributing only a subset of the metadata to at least one of the plurality of hosts.
65. The computer readable medium of claim 60 , wherein the at least one storage device comprises a plurality of storage devices, wherein the at least one host comprises a plurality of hosts, wherein the act (A) comprises an act of creating the metadata on a control station, and wherein the act (B) comprises an act of transmitting the metadata from the control station to the plurality of storage devices, and from the plurality of storage devices to the plurality of hosts.
66. The computer readable medium of claim 60 , wherein the at least one storage device comprises a plurality of storage devices, and wherein the act of automatically assigning comprises an act of considering performance and functionality characteristics of the plurality of storage devices in making the automatic assignment.
67. A control station for use in a computer system including at least one host and at least one storage device, the control station comprising: a user interface; and at least one controller that creates metadata defining a virtual data storage object that is independent of any particular host and any particular storage device, and that distributes the metadata about the computer system so that there is no central location that is the exclusive resource for accessing the metadata; wherein the at least one controller receives a set of parameters that defines a plurality of data images for the virtual data storage object and a manner in which the plurality of data images are interrelated, and wherein the at least one controller automatically assigns the storage resources within the computer system to store each of the plurality of data images.
68. The control station of claim 67 , wherein the at least one storage device comprises a plurality of storage devices, and wherein the at least one controller distributes the metadata among each of the plurality of storage devices that stores data stored to the virtual data storage object.
69. The control station of claim 68 , wherein the at least one controller distributes only a subset of the metadata to at least one of the plurality of storage devices.
70. The control station of claim 67 , wherein the at least one host comprises a plurality of hosts, and wherein the at least one controller distributes the metadata among each of the plurality of hosts that accesses the virtual data storage object.
71. The control station of claim 70 , wherein the at least one controller distributes only a subset of the metadata to at least one of the plurality of hosts.
72. The control station of claim 67 , wherein the at least one storage device comprises a plurality of storage devices, and wherein the at least one controller considers performance and functionality characteristics of the plurality of storage devices in making the automatic assignment.
73. The control station of claim 67 , wherein the at least one controller includes means for creating metadata defining a virtual data storage object that is independent of any particular host and any particular storage device, and means for distributing the metadata about the computer system so that there is no central location that is the exclusive resource for accessing the metadata.
74. A storage system for use in a computer system including at least one host and the storage system, the storage system to store data written by the at least one host, the at least one host storing a first copy of metadata for a virtual data storage object that is independent of any particular host and the storage system and that is stored using a storage resource on the storage system, the storage system comprising: the storage resource; a storage medium that stores a second copy of the metadata; and at least one controller that notifies the at least one host when the second copy of the metadata is updated so that the host can update the first copy of the metadata.
75. The storage system of claim 74 , wherein the at least one controller further maintains a list of all hosts that access the virtual data storage object from the storage system.
76. A method of implementing a virtual data storage object in a computer system including at least one host and at least one storage device that stores data written by the at least one host, the virtual data storage object including at least one data image, at least one of the data image and the virtual data storage object having an attribute, the at least one storage device having at least one capability, the method comprising acts of: (A) considering the at least one capability of the at least one storage device when implementing the virtual data storage object; and (B) allocating at least one of the virtual data storage object and the at least one data image to be implemented on the at least one storage device so that the at least one capability of the at least one storage device is employed to implement the at least one attribute of the at least one of the virtual data storage object and the at least one data image.
77. The method of claim 76 , wherein the at least one data image includes first and second data images, wherein the at least one attribute includes a mirror relationship between the first and second data images, and wherein the act (B) includes an act of allocating the first and second data images to utilize a mirroring capability of the at least one storage device.
78. The method of claim 77 , wherein the mirror relationship is a local mirror relationship, and wherein the act (B) includes an act of allocating the first and second data images to a same storage device having local mirroring capability.
79. The method of claim 77 , wherein the mirror relationship is a remote mirror relationship, and wherein the act (B) includes an act of allocating the first and second data images to first and second storage devices, respectively, each of the first and second storage devices having remote mirroring capability.
80. A computer readable medium encoded with a program for execution on a computer system including at least one host and at least one storage device that stores data written by the at least one host, the program for implementing a virtual data storage object including at least one data image, at least one of the data image and the virtual data storage object having an attribute, the at least one storage device having at least one capability, the method comprising acts of: (A) considering the at least one capability of the at least one storage device when implementing the virtual data storage object; and (B) allocating at least one of the virtual data storage object and the at least one data image to be implemented on the at least one storage device so that the at least one capability of the at least one storage device is employed to implement the at least one attribute of the at least one of the virtual data storage object and the at least one data image.
81. The computer readable medium of claim 80 , wherein the at least one data image includes first and second data images, wherein the at least one attribute includes a mirror relationship between the first and second data images, and wherein the act (B) includes an act of allocating the first and second data images to utilize a mirroring capability of the at least one storage device.
82. The computer readable medium of claim 81 , wherein the mirror relationship is a local mirror relationship, and wherein the act (B) includes an act of allocating the first and second data images to a same storage device having local mirroring capability.
83. The computer readable medium of claim 81 , wherein the mirror relationship is a remote mirror relationship, and wherein the act (B) includes an act of allocating the first and second data images to first and second storage devices, respectively, each of the first and second storage device having remote mirroring capability.
Unknown
May 3, 2005
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.