Claims
- 1. A method of generating a frozen image of a system having a plurality of logical storage objects, including a first logical storage object, wherein the first logical storage object includes a storage device, the method comprising:
building a logical storage tree with the first logical storage object as the root object and with the storage device as a leaf node; starting at the leaf node, constructing a freeze list having one or more freeze methods, wherein constructing a freeze list includes receiving information about storage device split and quiesce characteristics from the storage device; modifying the freeze list as a function of traversing the logical storage tree to the root object, wherein modifying includes adding information about split and quiesce characteristics for logical storage objects between the root object and the leaf node; selecting a freeze method from the freeze list; and freezing the first logical storage object using the selected freeze method.
- 2. The method of claim 1, wherein freezing the first logical storage object includes quiescing the storage device.
- 3. The method of claim 1, wherein freezing the first logical storage object includes quiescing from the root object out to the leaf node.
- 4. The method of claim 1, wherein building a logical storage tree includes:
determining location of each logical storage object; and receiving information about logical storage object split and quiesce characteristics from each of the plurality of logical storage objects.
- 5. The method of claim 4, wherein receiving information about logical storage object split and quiesce characteristics includes calling a plug-in software component associated with each of the plurality of logical storage objects.
- 6. The method of claim 1, wherein selecting a freeze method from the freeze list includes:
determining a quality of quiesce for each of the freeze methods on the freeze list; and choosing the freeze method with the highest quality of quiesce.
- 7. The method of claim 1, wherein selecting a freeze method from the freeze list includes:
selecting a type of freeze method; and choosing from freeze methods of the selected freeze method type.
- 8. The method of claim 1, wherein selecting a freeze method from the freeze list includes:
selecting a type of freeze method; determining a quality of quiesce for each of the freeze methods on the freeze list; and choosing the freeze method with the highest quality of quiesce from freeze methods of the selected freeze method type.
- 9. The method of claim 1, wherein a storage management stack having a plurality of levels is associated with each of the plurality of logical storage objects, and wherein building the logical storage tree includes traversing the storage management stack.
- 10. The method of claim 1, wherein modifying the freeze list includes determining whether a logical storage object spans multiple stable image data sources.
- 11. The method of claim 1, wherein modifying the freeze list includes determining all forms of stable disk image capability provided by each logical storage object.
- 12. The method of claim 1, wherein modifying the freeze list includes determining an optimal form of stable disk image capability for each of the plurality of logical storage objects from the all forms.
- 13. The method of claim 1, wherein adding information about split and quiesce characteristics includes calculating quiesce strength for one or more freeze methods while traversing the logical storage tree.
- 14. The method of claim 1, wherein adding information about split and quiesce characteristics includes calculating quiesce strength as a function of a quiesce operation associated with a quiesce node.
- 15. The method of claim 1, wherein modifying the freeze list further includes reviewing split types.
- 16. The method of claim 1, wherein modifying the freeze list further includes grouping nodes with similar split characteristics together for the purpose of determining what nodes are affected when split operations are executed.
- 17. The method of claim 16, wherein grouping includes gauging split operation quality.
- 18. The method of claim 1, wherein modifying the freeze list further includes grouping nodes with similar quiesce characteristics together for the purpose of determining what nodes are affected when quiesce operations are executed.
- 19. The method of claim 18, wherein grouping includes gauging quiesce operation quality.
- 20. A computer-accessible medium having executable instructions to generate a frozen image of a system having a plurality of logical storage objects, including a first logical storage object, wherein the first logical storage object includes a storage device, the executable instructions capable of directing a processor to perform:
building a logical storage tree with the first logical storage object as the root object and with the storage device as a leaf node; starting at the leaf node, constructing a freeze list, wherein constructing a freeze list includes receiving information about storage device split and quiesce characteristics from the storage device; modifying the freeze list as a function of traversing the logical storage tree from the leaf node to the root object, wherein modifying includes adding information about split and quiesce characteristics for logical storage objects between the root object and the leaf node; selecting a freeze method from the freeze list; and freezing the volume using the selected freeze method.
- 21. The computer-accessible medium of claim 20, wherein freezing the volume includes quiescing the storage device.
- 22. The computer-accessible medium of claim 20, wherein freezing the volume includes quiescing from the root object out to the leaf node.
- 23. The computer-accessible medium of claim 20, wherein building a logical storage tree includes:
determining a location for each logical storage object; and receiving information about logical storage object split and quiesce characteristics from each of the plurality of logical storage objects.
- 24. The computer-accessible medium of claim 23, wherein receiving information about logical storage object split and quiesce characteristics includes calling a plug-in software component associated with each of the plurality of logical storage objects.
- 25. The computer-accessible medium of claim 20, wherein selecting a freeze method from the freeze list includes:
determining a quality of quiesce for each of the freeze methods on the freeze list; and choosing the freeze method with the highest quality of quiesce.
- 26. The computer-accessible medium of claim 20, wherein selecting a freeze method from the freeze list includes:
selecting a type of freeze method; and choosing from freeze methods of the selected freeze method type.
- 27. The computer-accessible medium of claim 20, wherein selecting a freeze method from the freeze list includes:
selecting a type of freeze method; determining a quality of quiesce for each of the freeze methods on the freeze list; and choosing the freeze method with the highest quality of quiesce from freeze methods of the selected freeze method type.
- 28. The computer-accessible medium of claim 20, wherein a storage management stack having a plurality of levels is associated with each of the plurality of logical storage objects, and wherein building the logical storage tree includes traversing the storage management stack.
- 29. The computer-accessible medium of claim 20, wherein modifying the freeze list includes determining whether a logical storage object spans multiple stable image data sources.
- 30. The computer-accessible medium of claim 20, wherein modifying the freeze list includes determining all forms of stable disk image capability provided by each logical storage object.
- 31. The computer-accessible medium of claim 20, wherein modifying the freeze list includes determining an optimal form of stable disk image capability for each of the plurality of logical storage objects from the all forms.
- 32. The computer-accessible medium of claim 20, wherein adding information about split and quiesce characteristics includes calculating quiesce strength for one or more freeze methods while traversing the logical storage tree.
- 33. The computer-accessible medium of claim 20, wherein adding information about split and quiesce characteristics includes calculating quiesce strength as a function of a quiesce operation associated with a quiesce node.
- 34. The computer-accessible medium of claim 20, wherein modifying the freeze list further includes reviewing split types.
- 35. A method of generating a frozen image of a volume having one or more storage devices, the method comprising:
receiving information about storage device split and quiesce characteristics from the storage devices; storing the information regarding storage device split and quiesce characteristics; creating a freeze list having one or more freeze methods, wherein creating a freeze list includes combining information about volume split and quiesce characteristics with information regarding storage device split and quiesce characteristics; selecting a freeze method from the freeze list; and freezing the volume using the selected freeze method.
- 36. The method of claim 35, wherein freezing the volume includes quiescing each of the storage devices.
- 37. The method of claim 35, wherein freezing the volume includes quiescing the volume and each of the storage devices.
- 38. The method of claim 35, wherein combining information includes calculating quiesce strength for one of the freeze methods while traversing the logical storage tree.
- 39. The method of claim 38, wherein combining information includes calculating quiesce strength as a function of a quiesce operation associated with a quiesce node.
- 40. The method of claim 35, wherein combining information includes reviewing split types.
- 41. A method for generating a data structure that represents a storage environment having a plurality of logical storage objects, the method comprising:
obtaining information for each logical storage object, wherein the information includes configuration information, tactical syntax information describing how a frozen image of the logical storage object is generated, and quiesce information describing quiesce capabilities within the logical storage object; creating a hierarchy of logical storage objects; and generating the data structure from the information obtained for each logical storage object, wherein generating includes traversing the hierarchy.
- 42. The method of claim 41, wherein generating includes assigning a quiesce-type attribute, a quiesce-node attribute, a split-type attribute, and a split-node attribute to each logical storage object.
- 43. A method of identifying methods of quiescing a storage object, comprising:
receiving data identifying the storage object; and generating a freeze list including one or more freeze methods appropriate for quiescing the storage object, wherein generating includes creating a hierarchy of logical storage objects below the identified storage object, associating quiesce characteristics with each logical storage object below the identified storage object and generating freeze vectors as a function of quiesce characteristics associated with each logical storage object below the identified storage object.
- 44. The method of claim 43, wherein generating further includes assigning a measure of quiesce strength to each freeze method.
- 45. A method of quiescing a storage object, comprising:
transmitting data identifying the storage object; receiving a freeze list with one or more freeze methods appropriate for quiescing the storage object; selecting one of the freeze methods; and issuing a command to execute the freeze method.
- 46. The method of claim 45, wherein each freeze method includes a measure of quiesce strength and wherein selecting is a function of quiesce strength.
- 47. A data storage system, comprising:
a processor; a storage device coupled to the processor; an application program operative on the processor; and analysis software operative on the processor, wherein the analysis software includes an application program interface (API) and a plug-in interface; wherein the API operably couples the analysis software to the application program and provides a normalized interface to the application program; and wherein the plug-in interface receives information about storage device quiesce characteristics from the storage device.
- 48. A computer-readable medium comprising instructions which, when executed on a processor, create a system for controlling mass storage of data, the system comprising:
a processor; a storage device coupled to the processor; an application program operative on the processor; and analysis software operative on the processor, wherein the analysis software includes an application program interface (API) and a plug-in interface; wherein the API operably couples the analysis software to the application program and provides a normalized interface to the application program; and wherein the plug-in interface receives information about storage device quiesce characteristics from the storage device.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is related to the following co-pending, commonly assigned U.S. patent applications: “Methods, Functional Data, and Systems to Represent a Storage Environment,” attorney docket no. 1557.001US1, Ser. No. 09/997,602 filed Nov. 29, 2001; “Methods and Systems to Backup Data”, attorney docket no. 1557.002US1, Ser. No. ______, filed herewith; “Methods, Systems, and Apparatus to Interface with Storage Objects, ” attorney docket no. 1557.003US1, Ser. No. 09/997,612 filed Nov. 29, 2001; “Methods and Systems to Interface Storage Objects,” attorney docket no. 1557.005US1, Ser. No. 09/997,350, filed Nov. 29, 2001, “System and Method for Controlling the Creation of Stable Disk Images” attorney docket no. 1557.012US1, Ser. No. ______, filed herewith; and “System and Method for Characterizing Logical Storage Devices” attorney docket no. 1557.013US1, Ser. No. ______, filed herewith, each of which is herein incorporated by reference in its entirety.