Method and apparatus for asymmetric raid
First Claim
1. A method for mirroring data in a data storage system across a first storage device having a first lower latency, lower than a second higher latency, and a second storage device having the second higher latency, the method comprising:
- receiving an I/O at the data storage system; and
maintaining an I/O processing performance associated with the first storage device by controlling the I/O to the first storage device having the first lower latency and the second storage device having the second higher latency, wherein the second storage device is used as a log device, and wherein the controlling the I/O is according to properties of the I/O, properties of the first storage device having the first lower latency, and the properties of the second storage device having the second higher latency, wherein the controlling further comprising;
if the I/O is a read I/O, directing the read I/O to the first storage device having the first lower latency;
if the I/O is a write I/O,directing the write I/O to the first storage device having the first lower latency;
directing the write I/O to the second storage device having the second higher latency as a log device sequentially as a first extent, further comprising;
receiving a plurality of write I/Os;
aggregating the write I/O with the plurality of write I/Os; and
writing the plurality of write I/Os to the second storage device having the second higher latency as the log device; and
storing on a third storage device a mapping between a first offset for the first storage device having the first lower latency, and a second offset for the second storage device having the second higher latency.
13 Assignments
0 Petitions
Accused Products
Abstract
Example embodiments of the present invention relate to a method, an apparatus, and a computer program product for mirroring data in a data storage system across a first storage device having a first latency and a second storage device having a second latency. The method includes receiving an I/O at the data storage system and controlling the I/O to the first storage device having the first latency or the second storage device having the second latency according to properties of the I/O and properties of the first storage device having the first latency and the second storage device having the second latency.
25 Citations
17 Claims
-
1. A method for mirroring data in a data storage system across a first storage device having a first lower latency, lower than a second higher latency, and a second storage device having the second higher latency, the method comprising:
-
receiving an I/O at the data storage system; and maintaining an I/O processing performance associated with the first storage device by controlling the I/O to the first storage device having the first lower latency and the second storage device having the second higher latency, wherein the second storage device is used as a log device, and wherein the controlling the I/O is according to properties of the I/O, properties of the first storage device having the first lower latency, and the properties of the second storage device having the second higher latency, wherein the controlling further comprising; if the I/O is a read I/O, directing the read I/O to the first storage device having the first lower latency; if the I/O is a write I/O, directing the write I/O to the first storage device having the first lower latency; directing the write I/O to the second storage device having the second higher latency as a log device sequentially as a first extent, further comprising; receiving a plurality of write I/Os; aggregating the write I/O with the plurality of write I/Os; and writing the plurality of write I/Os to the second storage device having the second higher latency as the log device; and storing on a third storage device a mapping between a first offset for the first storage device having the first lower latency, and a second offset for the second storage device having the second higher latency. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A data storage system comprising:
-
a first storage device having a first lower latency, lower than a second higher latency; a second storage device having the second higher latency, wherein the second storage device is used as a log device; a third storage device having a mapping between a first offset for the first storage device having the first lower latency, and a second offset for the second storage device having the second high latency; and a controller configured for; receiving an I/O at the data storage system; and maintaining an I/O processing performance associated with the first storage device by controlling the I/O to the first storage device having the first lower latency and the second storage device having the second higher latency, wherein the controlling the I/O is according to properties of the I/O, properties of the first storage device having the first lower latency, and the properties of the second storage device having the second higher latency, wherein the controlling further comprising; if the I/O is a read I/O, directing the read I/O to the first storage device having the first lower latency; if the I/O is a write I/O, directing the write I/O to the first storage device having the first lower latency; directing the write I/O to the second storage device having the second higher latency as a log device sequentially as a first extent, further comprising; receiving a plurality of write I/Os; aggregating the write I/O with the plurality of write I/Os; and writing the plurality of write I/Os to the second storage device having the second higher latency as the log device; and storing on a third storage device a mapping between a first offset for the first storage device having the first lower latency, and a second offset for the second storage device having the second higher latency. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer program product including a non-transitory computer readable storage medium having computer program code encoded thereon that, when executed on one or more processors of a computer system, causes the computer system to mirror data in a data storage system across a first storage device having a first lower latency, lower than a second higher latency, and a second storage device having the second higher latency, the computer program product comprising program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device to:
-
receive an I/O at the data storage system; and maintain an I/O processing performance associated with the first storage device by controlling the I/O to the first storage device having the first lower latency and the second storage device having the second higher latency, wherein the second storage device is used as a log device, and wherein the controlling the I/O is according to properties of the I/O, properties of the first storage device having the first lower latency, and the properties of the second storage device having the second higher latency, wherein the controlling further comprising; if the I/O is a read I/O, direct the read I/O to the first storage device having the first lower latency; if the I/O is a write I/O, direct the write I/O to the first storage device having the first lower latency; direct the write I/O to the second storage device having the second higher latency as a log device sequentially as a first extent, further comprising; receive a plurality of write I/Os; aggregate the write I/O with the plurality of write I/Os; and write the plurality of write I/Os to the second storage device having the second higher latency as the log device; and store on a third storage device a mapping between a first offset for the first storage device having the first lower latency, and a second offset for the second storage device having the second higher latency.
-
Specification