Workload-distributing data replication system
Abstract
A method for more effectively distributing the I/O workload in a data replication system is disclosed herein. In selected embodiments, such a method may include generating an I/O request and identifying a storage resource group associated with the I/O request. In the event the I/O request is associated with a first storage resource group, the I/O request may be directed to a first storage device and a copy of the I/O request may be mirrored from the first storage device to a second storage device. Alternatively, in the event the I/O request is associated with a second storage resource group, the I/O request may be directed to a second storage device and a copy of the I/O request may be mirrored from the second storage device to the first storage device.
Claims
exact text as granted — not AI-modified1 . A method for distributing load in a data replication system comprising a first storage device and a second storage device, the method comprising:
generating an I/O request for processing in one of a first storage resource group and a second storage resource group; directing the I/O request to the first storage device and mirroring a copy of the I/O request to the second storage device in the event the I/O request is to be processed in the first storage resource group; and directing the I/O request to the second storage device and mirroring a copy of the I/O request to the first storage device in the event the I/O request is to be processed in the second storage resource group.
2 . The method of claim 1 , wherein the first storage resource group comprises a first logical subsystem (“LSS”) group and the second storage resource group comprises a second logical subsystem (“LSS”) group.
3 . The method of claim 1 , wherein the first storage resource group comprises a first group of logical volumes and the second storage resource group comprises a second group of logical volumes.
4 . The method of claim 1 , wherein, in the event the I/O request is to be processed in the first storage resource group but communication with the first storage device fails, redirecting the I/O request to the second storage device.
5 . The method of claim 1 , wherein, in the event the I/O request is to be processed in the second storage resource group but communication with the second storage device fails, redirecting the I/O request to the first storage device.
6 . The method of claim 1 , wherein:
directing the I/O request to the first storage device and mirroring a copy of the I/O request to the second storage device comprises directing the I/O request to a first server in the first storage device and mirroring a copy of the I/O request to a first server in the second storage device, wherein the first servers are associated with the first storage resource group; and directing the I/O request to the second storage device and mirroring a copy of the I/O request to the first storage device comprises directing the I/O request to a second server in the second storage device and mirroring a copy of the I/O request to a second server in the first storage device, wherein the second servers are associated with the second storage resource group.
7 . The method of claim 1 , wherein each of the first storage resource group and the second storage resource group contains an equal number of resources.
8 . An apparatus for distributing a load in a data replication system under normal, non-failover operating conditions, the data replication system comprising a first storage device and a second storage device, the apparatus comprising:
a generation module to generate an I/O request; an identification module to identify one of a first and a second storage resource group in which to process the I/O request; a routing module to direct the I/O request to the first storage device in the event the I/O request is to be processed in the first storage resource group, and to direct the I/O request to the second storage device in the event the I/O request is to be processed in the second storage resource group; a first mirroring module associated with the first storage device to mirror a copy of the I/O request to the second storage device in the event the I/O request is directed to the first storage device; and a second mirroring module associated with the second storage device to mirror a copy of the I/O request to the first storage device in the event the I/O request is directed to the second storage device.
9 . The apparatus of claim 8 , wherein the first storage resource group comprises a first logical subsystem (“LSS”) group and the second storage resource group comprises a second logical subsystem (“LSS”) group.
10 . The apparatus of claim 8 , wherein the first storage resource group comprises a first group of logical volumes and the second storage resource group comprises a second group of logical volumes.
11 . The apparatus of claim 8 , wherein:
the I/O request is associated with the first storage resource group; and the routing module further redirects the I/O request from the first storage device to the second storage device in the event communication with the first storage device fails.
12 . The apparatus of claim 8 , wherein:
the I/O request is associated with the second storage resource group; and the routing module further redirects the I/O request from the second storage device to the first storage device in the event communication with the second storage device fails.
13 . The apparatus of claim 8 , wherein:
the first mirroring module mirrors the I/O request from a first server in the first storage device to a first server in the second storage device, wherein the first servers are associated with the first storage resource group; and the second mirroring module mirrors the I/O request from a second server in the second storage device to a second server in the first storage device, wherein the second servers are associated with the second storage resource group.
14 . The apparatus of claim 8 , wherein each of the first storage resource group and the second storage resource group contains an equal number of resources.
15 . A system for distributing a load in a data replication system under normal, non-failover operating conditions, the system comprising:
first and second storage devices; a host device configured to generate an I/O request and identify one of a first and second storage resource group in which to process the I/O request; the host device further configured to direct the I/O request to the first storage device in the event the I/O request is to be processed in the first storage resource group, and direct the I/O request to the second storage device in the event the I/O request is to be processed in the second storage resource group; the first storage device configured to mirror a copy of the I/O request to the second storage device in the event the I/O request is directed to the first storage device; and the second storage device configured to mirror a copy of the I/O request to the first storage device in the event the I/O request is directed to the second storage device.
16 . The system of claim 15 , wherein the first storage resource group comprises a first logical subsystem (“LSS”) group and the second storage resource group comprises a second logical subsystem (“LSS”) group.
17 . The system of claim 15 , wherein the first storage resource group comprises a first group of logical volumes and the second storage resource group comprises a second group of logical volumes.
18 . The system of claim 15 , wherein:
the I/O request is associated with the first storage resource group; and the host device is further configured to redirect the I/O request from the first storage device to the second storage device in the event communication with the first storage device fails.
19 . The system of claim 15 , wherein:
the I/O request is associated with the second storage resource group; and the host device is further configured to redirect the I/O request from the second storage device to the first storage device in the event communication with the second storage device fails.
20 . The system of claim 15 , wherein:
the first storage device mirrors the I/O request from a first server in the first storage device to a first server in the second storage device, wherein the first servers are associated with the first storage resource group; and the second storage device mirrors the I/O request from a second server in the second storage device to a second server in the first storage device, wherein the second servers are associated with the second storage resource group.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.