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.Join the waitlist — get patent alerts
Track US2013290260A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.