IP Library Granted Patent US 11,132,267
Granted Patent B1
US 11,132,267 · App. 16/930,675 · Granted Sep 28, 2021

Ability to maintain RPO in clustered environment with failed nodes/disks

Inventors: George Mathew (Belmont, CA); Kalyan C. Gunda (Bangalore, IN)
Assignee: EMC IP HOLDING COMPANY LLC
G06F11/1471G06F11/1448G06F11/1451G06F2201/82
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,132,267
App. No.
16/930,675
Granted
Sep 28, 2021
Kind
B1
Abstract

A method for maintaining a replica of a primary storage on a secondary storage, when the primary storage includes data stored in a plurality of nodes. When at least one node or disk has failed, the method takes partial snapshot that excludes the failed node or disk. A diff file is created by the differences between the partial snapshot and a snapshot taken immediately prior to the failure. The diff is applied to the replica. When the failed node or disk comes back online, the method takes a snapshot prior to allowing any write operation. A diff file of the new snapshot is generated by comparing the new snapshot to the snapshot taken immediately prior to the failure. The new diff is applied to the replica.

Claims (55)

1. A system comprising:

a primary storage having data stored in a plurality of nodes;

a secondary storage storing a replica of the primary storage;

one or more processors; and

a non-transitory computer readable medium storing a plurality of instructions, which when executed, cause the one or more processors to:

periodically update the replica and when it is determined that at least one of the plurality of nodes is offline, performing the steps:

taking a partial snapshot of the primary storage excluding offline node;

forming a partial diff file by comparing the snapshot to immediately preceding snapshot;

sending the partial diff file to the secondary storage.

2. The system of claim 1 , wherein the plurality of instructions, when executed, further cause the one or more processors to apply the partial diff file to the replica.

3. The system of claim 2 , wherein the plurality of instructions, when executed, further cause the one or more processors to:

store identification of the offline node.

4. The system of claim 3 , wherein the plurality of instructions, when executed, further cause the one or more processors to:

when receiving an indication that the offline node is operational, performing the steps:

identify directory node in the primary storage;

notify directory node that offline node is operational.

5. The system of claim 4 , wherein the plurality of instructions, when executed, further cause the one or more processors to:

when receiving notification that offline node is operational performing the steps:

taking node snapshot of the offline node;

generating a node diff file by comparing the node snapshot to the partial snapshot;

sending the node diff file to the secondary storage.

6. The system of claim 5 , comprising:

wherein the plurality of instructions, when executed, further cause the one or more processors to apply the node diff to the replica.

7. In a system having a primary storage having data stored in a plurality of nodes and a secondary storage storing a replica of the primary storage, a computer implemented method comprising:

periodically update the replica and when it is determined that at least one of the plurality of nodes is offline, performing the steps:

taking a partial snapshot of the primary storage excluding offline node;

forming a partial diff file by comparing the snapshot to immediately preceding snapshot;

sending the partial diff file to the secondary storage.

8. The method of claim 7 , further comprising applying the partial diff file to the replica.

9. The method of claim 8 , further comprising storing identification of the offline node.

10. The method of claim 9 , further comprising when receiving an indication that the offline node is operational, performing the steps:

identifying directory node in the primary storage;

notifying directory node that offline node is operational.

11. The method of claim 10 , further comprising

when receiving notification that offline node is operational performing the steps:

taking node snapshot of the offline node;

generating a node diff file by comparing the node snapshot to the partial snapshot;

sending the node diff file to the secondary storage.

12. The method of claim 11 , further comprising applying the node diff to the replica.

13. A computer program product comprising a non-transitory computer-readable medium having a computer-readable program code embodied therein to be executed by one or more processors, the program code including instructions to:

periodically update a replica of a primary storage in a secondary storage, the primary storage having a plurality of nodes;

when it is determined that at least one of the plurality of nodes is offline, performing the steps:

taking a partial snapshot of the primary storage excluding offline node;

forming a partial diff file by comparing the snapshot to immediately preceding snapshot;

sending the partial diff file to the secondary storage.

14. The computer program product of claim 13 , wherein the program code includes further instructions to apply the partial diff file to the replica.

15. The computer program product of claim 14 , wherein the program code includes further instructions to store identification of the offline node.

16. The computer program product of claim 15 , wherein the program code includes further instructions to: when receiving an indication that the offline node is operational, performing the steps:

identify directory node in the primary storage;

notify directory node that offline node is operational.

17. The computer program product of claim 16 , wherein the program code includes further instructions to: when receiving notification that offline node is operational performing the steps:

taking node snapshot of the offline node;

generating a node diff file by comparing the node snapshot to the partial snapshot;

sending the node diff file to the secondary storage.

18. The computer program product of claim 17 , the program code including instructions to apply the node diff to the replica.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053574/0221) 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 060333/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053578/0183) 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 060332/0864 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053573/0535) 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 060333/0106 →
RELEASE OF SECURITY INTEREST AT REEL 053531 FRAME 0108 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0371 →
SECURITY INTEREST Recorded Aug 21, 2020
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 053578/0183 →
SECURITY INTEREST Recorded Aug 21, 2020
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 053573/0535 →
SECURITY INTEREST Recorded Aug 21, 2020
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 053574/0221 →
SECURITY AGREEMENT Recorded Aug 18, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 053531/0108 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 16, 2020
From: MATHEW, GEORGE; GUNDA, KALYAN C.
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 053228/0189 →