IP Library Granted Patent US 11,513,705
Granted Patent B2
US 11,513,705 · App. 17/234,054 · Granted Nov 29, 2022

System and method for volume polarization across multiple storage systems

Inventors: David Meiri (Somerville, MA); Xiangping Chen (Sherborn, MA)
Assignee: EMC IP Holding Company, LLC
G06F3/0634G06F3/061G06F3/0614G06F3/0689
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,513,705
App. No.
17/234,054
Granted
Nov 29, 2022
Kind
B2
Abstract

A method, computer program product, and computing system for dividing a plurality of volumes replicated across a pair of storage systems into one or more consistency groups. A polarization state may be defined for each consistency group. An input-output (IO) failure associated with at least one consistency group may be detected. At least a portion of the at least one consistency group may be polarized based upon, at least in part, the polarization state defined for the at least one consistency group.

Claims (60)

1. A computer-implemented method, executed on a computing device, comprising:

dividing a plurality of volumes replicated across a pair of storage systems into one or more consistency groups, wherein each consistency group is non-overlapping with respect to each other consistency group;

defining a state for each consistency group, wherein the state includes a description or indication of an amount or a level for each consistency group;

detecting an input-output (IO) failure associated with at least one consistency group such that at least one storage system of the pair of storage systems stops servicing all IO requests to minimize a recovery time in an event of a volume-specific replication failure or a transient problem; and

determining which storage system of the pair of storage systems to use for at least a portion of the at least one consistency group based upon, at least in part, the state defined for the at least one consistency group.

2. The computer-implemented method of claim 1 , wherein defining the state for each consistency group includes defining the state as one of: online, partially polarized, and fully polarized.

3. The computer-implemented method of claim 2 , wherein determining which storage system of the pair of storage systems to use for at least a portion of the at least one consistency group based upon, at least in part, the state defined for the at least one consistency group includes:

determining that the state for a consistency group is online;

determining which storage system of the pair of storage systems to use for at least a portion of the consistency group using a witness node;

identifying an active storage system and a passive storage system;

defining a bias for the consistency group; and

updating the state for the consistency group to partially polarized.

4. The computer-implemented method of claim 3 , wherein determining which storage system of the pair of storage systems to use for at least a portion of the at least one consistency group based upon, at least in part, the state defined for the at least one consistency group includes:

determining that the state for the consistency group is partially polarized; and

determining which storage system of the pair of storage systems to use for at least a portion of the consistency group based upon, at least in part, the bias defined for the consistency group.

5. The computer-implemented method of claim 4 , further comprising:

determining whether each volume of the consistency group has been determined which storage system of the pair of storage systems to use;

in response to determining that each volume of the consistency group has not been determined which storage system of the pair of storage systems to use, maintaining the state for the consistency group as partially polarized; and

in response to determining that each volume of the consistency group has been determined which storage system of the pair of storage systems to use, updating the polarization state for the consistency group to fully polarized.

6. The computer-implemented method of claim 4 , wherein determining which storage system of the pair of storage systems to use for at least a portion of the at least one consistency group based upon, at least in part, the state defined for the at least one consistency group includes determining which storage system of the pair of storage systems to use for additional volumes of the at least one consistency group to be available on the same storage system.

7. The computer-implemented method of claim 1 , wherein determining which storage system of the pair of storage systems to use for at least a portion of the at least one consistency group based upon, at least in part, the state defined for the at least one consistency group includes determining which storage system of the pair of storage systems to use for at least a portion of the at least one consistency groups at a volume granularity.

8. A computer program product residing on a non-transitory computer readable medium having a plurality of instructions stored thereon which, when executed by a processor, cause the processor to perform operations comprising:

dividing a plurality of volumes replicated across a pair of storage systems into one or more consistency groups, wherein each consistency group is non-overlapping with respect to each other consistency group;

defining a state for each consistency group, wherein the state includes a description or indication of an amount or a level for each consistency group;

detecting an input-output (IO) failure associated with at least one consistency group such that at least one storage system of the pair of storage systems stops servicing all IO requests to minimize a recovery time in an event of a volume-specific replication failure or a transient problem; and

determining which storage system of the pair of storage systems to use for at least a portion of the at least one consistency group based upon, at least in part, the state defined for the at least one consistency group.

9. The computer program product of claim 8 , wherein defining the state for each consistency group includes defining the state as one of: online, partially polarized, and fully polarized.

10. The computer program product of claim 9 , wherein determining which storage system of the pair of storage systems to use for at least a portion of the at least one consistency group based upon, at least in part, the state defined for the at least one consistency group includes:

determining that the state for a consistency group is online;

determining which storage system of the pair of storage systems to use for at least a portion of the consistency group using a witness node;

identifying an active storage system and a passive storage system;

defining a bias for the consistency group; and

updating the state for the consistency group to partially polarized.

11. The computer program product of claim 10 , wherein determining which storage system of the pair of storage systems to use for at least a portion of the at least one consistency group based upon, at least in part, the state defined for the at least one consistency group includes:

determining that the state for the consistency group is partially polarized; and

determining which storage system of the pair of storage systems to use for at least a portion of the consistency group based upon, at least in part, the bias defined for the consistency group.

12. The computer program product of claim 11 , wherein the operations further comprise:

determining whether each volume of the consistency group has been determined which storage system of the pair of storage systems to use;

in response to determining that each volume of the consistency group has not been determined which storage system of the pair of storage systems to use, maintaining the state for the consistency group as partially polarized; and

in response to determining that each volume of the consistency group has been determined which storage system of the pair of storage systems to use, updating the polarization state for the consistency group to fully polarized.

13. The computer program product of claim 11 , wherein determining which storage system of the pair of storage systems to use for at least a portion of the at least one consistency group based upon, at least in part, the state defined for the at least one consistency group includes determining which storage system of the pair of storage systems to use for additional volumes of the at least one consistency group to be available on the same storage system.

14. The computer program product of claim 8 , wherein determining which storage system of the pair of storage systems to use for at least a portion of the at least one consistency group based upon, at least in part, the state defined for the at least one consistency group includes determining which storage system of the pair of storage systems to use for at least a portion of the one or more consistency groups at a volume granularity.

15. A computing system comprising:

a memory; and

a processor configured to divide a plurality of volumes replicated across a pair of storage systems into one or more consistency groups, wherein each consistency group is non-overlapping with respect to each other consistency group, wherein the processor is further configured to define a state for each consistency group, wherein the state includes a description or indication of an amount or a level for each consistency group, wherein the processor is further configured to detect an input-output (IO) failure associated with at least one consistency group such that at least one storage system of the pair of storage systems stops servicing all TO requests to minimize a recovery time in an event of a volume-specific replication failure or a transient problem, and wherein the processor is further configured to determine which storage system of the pair of storage systems to use for at least a portion of the at least one consistency group based upon, at least in part, the polarization state defined for the at least one consistency group.

16. The computing system of claim 15 , wherein defining the state for each consistency group includes defining the state as one of: online, partially polarized, and fully polarized.

17. The computing system of claim 16 , wherein determining which storage system of the pair of storage systems to use for at least a portion of the at least one consistency group based upon, at least in part, the state defined for the at least one consistency group includes:

determining that the state for a consistency group is online;

determining which storage system of the pair of storage systems to use for at least a portion of the consistency group using a witness node;

identifying an active storage system and a passive storage system;

defining a bias for the consistency group; and

updating the state for the consistency group to partially polarized.

18. The computing system of claim 17 , wherein determining which storage system of the pair of storage systems to use for at least a portion of the at least one consistency group based upon, at least in part, the state defined for the at least one consistency group includes:

determining that the state for the consistency group is partially polarized; and

determining which storage system of the pair of storage systems to use for at least a portion of the consistency group based upon, at least in part, the bias defined for the consistency group.

19. The computing system of claim 18 , wherein the processor is further configured to:

determine whether each volume of the consistency group has been determined which storage system of the pair of storage systems to use;

in response to determining that each volume of the consistency group has not been determined which storage system of the pair of storage systems to use, maintaining the state for the consistency group as partially polarized; and

in response to determining that each volume of the consistency group has been determined which storage system of the pair of storage systems to use, updating the polarization state for the consistency group to fully polarized.

20. The computing system of claim 18 , wherein determining which storage system of the pair of storage systems to use for at least a portion of the at least one consistency group based upon, at least in part, the state defined for the at least one consistency group includes determining which storage system of the pair of storage systems to use for additional volumes of the at least one consistency group to be available on the same storage system.

Assignments (10)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0280) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0255 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0124) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0012 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0001) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062021/0844 →
RELEASE OF SECURITY INTEREST Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058297/0332 →
SECURITY INTEREST Recorded May 19, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056295/0124 →
SECURITY INTEREST Recorded May 19, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056295/0001 →
SECURITY INTEREST Recorded May 19, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056295/0280 →
CORRECTIVE ASSIGNMENT TO CORRECT THE MISSING PATENTS THAT WERE ON THE ORIGINAL SCHEDULED SUBMITTED BUT NOT ENTERED PREVIOUSLY RECORDED AT REEL: 056250 FRAME: 0541. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded May 17, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 056311/0781 →
SECURITY AGREEMENT Recorded May 14, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 056250/0541 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 19, 2021
From: MEIRI, DAVID; CHEN, XIANGPING
To: EMC IP HOLDING COMPANY, LLC
Reel/Frame 055959/0563 →
Continuity (1)
Related Publication 20220334743A1 · Oct 20, 2022
Cited By (2)
US 12,568,160 US 12,641,166