Method and apparatus for providing hardware aware logical volume mirrors
First Claim
1. A method of reading data from a mirrored logical volume, comprising:
- receiving a read request directed to a mirrored logical volume;
retrieving characteristic information for each of a plurality of physical devices associated with mirrors of the mirrored logical volume, wherein the characteristic information identifies a particular characteristic of a physical storage device itself and wherein the characteristic information distinguishes between different types of physical storage devices in the plurality of physical storage devices, and wherein the characteristic information includes at least one of whether a corresponding physical storage device includes a write cache, whether a corresponding physical storage device includes a read-ahead cache, a speed of a corresponding physical storage device, and a connection type of a corresponding physical storage device;
applying one or more rules to the characteristic information to select a physical storage device from the plurality of physical storage devices to which the read request is to be directed; and
reading the data from the selected physical storage device.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for providing hardware aware logical volume mirrors are provided. In particular, the an improved logical volume system and method are provided in which a mirroring device driver is provided that selects a physical storage device from which data is to be read based on information obtained regarding the physical devices used in the mirror of the data. The mirroring device driver may be part of a logical volume device driver (LVDD), such that a modified LVDD is provided, or may work in concert with the logical volume device driver to achieve the purposes of the present invention. The information regarding the physical devices used in the mirror may include characteristic data of physical storage devices (e.g., whether a write cache is used, whether a read-ahead cache is used, RPM speed, connector type, etc.) and may also include operational history data. One or more rules are applied to this information to determine which physical storage device is an optimum storage device from which data is to be accessed.
11 Citations
27 Claims
-
1. A method of reading data from a mirrored logical volume, comprising:
-
receiving a read request directed to a mirrored logical volume; retrieving characteristic information for each of a plurality of physical devices associated with mirrors of the mirrored logical volume, wherein the characteristic information identifies a particular characteristic of a physical storage device itself and wherein the characteristic information distinguishes between different types of physical storage devices in the plurality of physical storage devices, and wherein the characteristic information includes at least one of whether a corresponding physical storage device includes a write cache, whether a corresponding physical storage device includes a read-ahead cache, a speed of a corresponding physical storage device, and a connection type of a corresponding physical storage device; applying one or more rules to the characteristic information to select a physical storage device from the plurality of physical storage devices to which the read request is to be directed; and reading the data from the selected physical storage device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of reading data from a mirrored logical volume, comprising:
-
receiving a read request directed to a mirrored logical volume; retrieving characteristic information for each of a plurality of physical storage devices associated with mirrors of the mirrored logical volume; wherein the characteristic information includes at least one of whether a corresponding physical storage device includes a write cache, whether a corresponding physical storage device includes a read-ahead cache, a speed of a corresponding physical storage device, and a connection type of a corresponding physical storage device; wherein the characteristic information further includes operational history information, and wherein the operational history information includes at least one of an amount of time that a corresponding physical storage device has been in service and a failure history of a corresponding physical storage device; applying one or more rules to the characteristic information to select a physical storage device from the plurality of physical storage devices to which the read request is to be directed; and reading the data from the selected physical storage device.
-
-
10. A computer program product in a computer readable medium for reading data from a mirrored logical volume, comprising:
-
first instructions for receiving a read request directed to a mirrored logical volume; second instructions for retrieving characteristic information for each of a plurality of physical storage devices associated with mirrors of the mirrored logical volume, wherein the characteristic information identifies a particular characteristic of a physical storage device itself and wherein the characteristic information distinguishes between different types of physical storage devices in the plurality of physical storage devices, and wherein the characteristic information includes at least one of whether a corresponding physical storage device includes a write cache, whether a corresponding physical storage device includes a read-ahead cache, a speed of a corresponding physical storage device, and a connection type of a corresponding physical storage device; third instructions for applying one or more rules to the characteristic information to select a physical storage device from the plurality of physical storage devices to which the read request is to be directed; and fourth instructions for reading the data from the selected physical storage device. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. A computer program product in a computer readable medium for reading data from a mirrored logical volume, comprising:
-
first instructions for receiving a read request directed to a mirrored logical volume; second instructions for retrieving characteristic information for each of a plurality of physical storage devices associated with mirrors of the mirrored logical volume; wherein the characteristic information includes at least one of whether a corresponding physical storage device includes a write cache, whether a corresponding physical storage device includes a read-ahead cache, a speed of a corresponding physical storage device, and a connection type of a corresponding physical storage device; wherein the characteristic information further includes operational history information, and wherein the operational history information includes at least one of an amount of time that a corresponding physical storage device has been in service and a failure history of a corresponding physical storage device; third instructions for applying one or more rules to the characteristic information to select a physical storage device from the plurality of physical storage devices to which the read request is to be directed; and fourth instructions for reading the data from the selected physical storage device.
-
-
19. An apparatus for reading data from a mirrored logical volume, comprising:
-
means for receiving a read request directed to a mirrored logical volume; means for retrieving characteristic information for each of a plurality of physical storage devices associated with mirrors of the mirrored logical volume, wherein the characteristic information identifies a particular characteristic of a physical storage device itself, and wherein the characteristic information distinguishes between different types of physical storage devices in the plurality of physical storage devices, and wherein the characteristic information includes at least one of whether a corresponding physical storage device includes a write cache, whether a corresponding physical storage device includes a read-ahead cache, a speed of a corresponding physical storage device, and a connection type of a corresponding physical storage device; means for applying one or more rules to the characteristic information to selcet a physical storage device from the plurality of physical storage devices to which the read request is to be directed; and means for reading the data from the selected physical storage device.
-
-
20. A method, in a data processing system, for selecting a storage device from which to read data, comprising:
-
storing information into a user input database, wherein the information identifies physical characteristics of at least one storage device itself, and wherein the information distinguishes between the at least one storage device and different storage devices in a plurality of storage devices, and wherein the information includes at least one of whether a corresponding storage device includes a write cache, whether a corresponding storage device includes a read-ahead cache, a speed of a corresponding storage device, and a connection type of a corresponding storage device; reading by a device driver, upon mirror activation and initialization, the information for the at least one storage device in the user input database; and selecting an optimal storage device to send a read request to based upon the information for the at least one storage device read from the user input database. - View Dependent Claims (21, 22, 23, 24, 25, 26)
-
-
27. A method, in a data processing system, for selecting a storage device from which to read data, comprising:
-
storing information into a user input database, wherein the information identifies characteristics of at least one storage device; wherein the information includes at least one of whether a corresponding storage device includes a write cache, whether a corresponding storage device includes a read-ahead cache, a speed of a corresponding storage devices, and a connection type of a corresponding storage device; wherein the information further includes operational history information, and wherein the operational history information includes at least one of an amount of time that a corresponding storage device has been in service and a failure history of a corresponding storage device; reading, by a device driver, upon mirror activation and initialization, the information for the at least one storage device in the user input database; and selecting an optimal storage device to send a read request to based upon the information for the at least one storage device read from the user input database.
-
Specification