IP Library Granted Patent US 11,403,184
Granted Patent B1
US 11,403,184 · App. 17/188,073 · Granted Aug 2, 2022

Mitigating and automating backup failure recoveries in data protection policies

Inventors: Pravin Ashok Kumar (Bangalore, IN); Wei Wang (Chengdu, CN)
Assignee: EMC IP Holding Company LLC
G06F11/1461G06F11/076G06F11/079G06F11/0769G06F11/0772G06F11/0775G06F11/0781G06F11/143G06F11/1458G06F11/1492G06F2201/81
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,403,184
App. No.
17/188,073
Granted
Aug 2, 2022
Kind
B1
Abstract

Assets are associated to a data protection policy. Configuration information is received for the data protection policy. The configuration information includes a data protection job to perform for the assets and a schedule for the data protection job. A shadow policy is generated that includes the configuration information. The data protection policy is executed. Upon detecting a failure of the data protection job for an asset, the asset is moved from the data protection policy to the shadow policy. The shadow policy is executed. Execution of the shadow policy includes calculating a base time value, adding a random time value to the base time value to obtain a wait time, and after the wait time has elapsed, retrying the data protection job.

Claims (102)

1. A method comprising:

associating assets to a data protection policy;

receiving configuration information for the data protection policy, the configuration information comprising a data protection job to perform for the assets, and a schedule for the data protection job;

generating a shadow policy comprising the configuration information from the data protection policy;

executing the data protection policy;

detecting a failure of the data protection job for an asset associated with the data protection policy;

moving the asset from the data protection policy to the shadow policy; and

executing the shadow policy, the execution comprising:

calculating a base time value;

adding a random time value to the base time value to obtain a wait time; and

after the wait time has elapsed, retrying the data protection job.

2. The method of claim 1 further comprising:

if the retry is successful, moving the asset from the shadow policy back to the data protection policy; and

if the retry is unsuccessful and a threshold number of retries has not been reached, repeating execution of the shadow policy; and

upon reaching the threshold number of retries,

collecting log files associated with the retries; and

clustering log entries in the log files based on severities recorded in the log entries and time intervals during which the log entries were recorded.

3. The method of claim 2 wherein the calculating the base time value further comprises increasing the base time value with each unsuccessful retry.

4. The method of claim 1 further comprising:

receiving a change to the configuration information for the data protection policy; and

updating the data protection policy and the shadow policy with the change.

5. The method of claim 1 further comprising:

prompting a user to enable shadow policy creation.

6. The method of claim 1 further comprising:

retrying the data protection job multiple times;

determining that each retry was unsuccessful and a threshold number of retries has been reached;

collecting a plurality of logs maintained by a plurality of services involved with the data protection job, the logs having recorded a set of events, timestamps when the events occurred, and severity levels for the events;

dividing a length of time over which the retries occurred into a plurality of time intervals;

forming a plurality of timeslots corresponding to the plurality of time intervals;

grouping the plurality of events into the plurality of timeslots based on the timestamps of when the events occurred;

generating a dataset by summing, for each particular timeslot and each particular severity level, a number of events that occurred in that particular timeslot and had that particular severity level;

applying k-means clustering to the dataset to generate first and second cluster sets;

identifying one of the first or second cluster sets as being a target log segment based on the one of the first or second cluster sets having a greater number of events with higher severity levels than another of the first or second cluster sets; and

reporting, to a user, the target log segment.

7. A system comprising: a processor; and memory configured to store one or more sequences of instructions which, when executed by the processor, cause the processor to carry out the steps of:

associating assets to a data protection policy;

receiving configuration information for the data protection policy, the configuration information comprising a data protection job to perform for the assets, and a schedule for the data protection job;

generating a shadow policy comprising the configuration information from the data protection policy;

executing the data protection policy;

detecting a failure of the data protection job for an asset associated with the data protection policy;

moving the asset from the data protection policy to the shadow policy; and

executing the shadow policy, the execution comprising:

calculating a base time value;

adding a random time value to the base time value to obtain a wait time; and

after the wait time has elapsed, retrying the data protection job.

8. The system of claim 7 wherein the processor further carries out the steps of:

if the retry is successful, moving the asset from the shadow policy back to the data protection policy; and

if the retry is unsuccessful and a threshold number of retries has not been reached, repeating execution of the shadow policy; and

upon reaching the threshold number of retries,

collecting log files associated with the retries; and

clustering log entries in the log files based on severities recorded in the log entries and time intervals during which the log entries were recorded.

9. The system of claim 8 wherein the calculating the base time value further comprises increasing the base time value with each unsuccessful retry.

10. The system of claim 7 wherein the processor further carries out the steps of:

receiving a change to the configuration information for the data protection policy; and

updating the data protection policy and the shadow policy with the change.

11. The system of claim 7 wherein the processor further carries out the steps of:

prompting a user to enable shadow policy creation.

12. The system of claim 7 wherein the processor further carries out the steps of:

retrying the data protection job multiple times;

determining that each retry was unsuccessful and a threshold number of retries has been reached;

collecting a plurality of logs maintained by a plurality of services involved with the data protection job, the logs having recorded a set of events, timestamps when the events occurred, and severity levels for the events;

dividing a length of time over which the retries occurred into a plurality of time intervals;

forming a plurality of timeslots corresponding to the plurality of time intervals;

grouping the plurality of events into the plurality of timeslots based on the timestamps of when the events occurred;

generating a dataset by summing, for each particular timeslot and each particular severity level, a number of events that occurred in that particular timeslot and had that particular severity level;

applying k-means clustering to the dataset to generate first and second cluster sets;

identifying one of the first or second cluster sets as being a target log segment based on the one of the first or second cluster sets having a greater number of events with higher severity levels than another of the first or second cluster sets; and

reporting, to a user, the target log segment.

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

associating assets to a data protection policy;

receiving configuration information for the data protection policy, the configuration information comprising a data protection job to perform for the assets, and a schedule for the data protection job;

generating a shadow policy comprising the configuration information from the data protection policy;

executing the data protection policy;

detecting a failure of the data protection job for an asset associated with the data protection policy;

moving the asset from the data protection policy to the shadow policy; and

executing the shadow policy, the execution comprising:

calculating a base time value;

adding a random time value to the base time value to obtain a wait time; and

after the wait time has elapsed, retrying the data protection job.

14. The computer program product of claim 13 wherein the method further comprises:

if the retry is successful, moving the asset from the shadow policy back to the data protection policy; and

if the retry is unsuccessful and a threshold number of retries has not been reached, repeating execution of the shadow policy; and

upon reaching the threshold number of retries,

collecting log files associated with the retries; and

clustering log entries in the log files based on severities recorded in the log entries and time intervals during which the log entries were recorded.

15. The computer program product of claim 14 wherein the calculating the base time value further comprises increasing the base time value with each unsuccessful retry.

16. The computer program product of claim 13 wherein the method further comprises:

receiving a change to the configuration information for the data protection policy; and

updating the data protection policy and the shadow policy with the change.

17. The computer program product of claim 13 wherein the method further comprises:

prompting a user to enable shadow policy creation.

18. The computer program product of claim 13 wherein the method further comprises:

retrying the data protection job multiple times;

determining that each retry was unsuccessful and a threshold number of retries has been reached;

collecting a plurality of logs maintained by a plurality of services involved with the data protection job, the logs having recorded a set of events, timestamps when the events occurred, and severity levels for the events;

dividing a length of time over which the retries occurred into a plurality of time intervals;

forming a plurality of timeslots corresponding to the plurality of time intervals;

grouping the plurality of events into the plurality of timeslots based on the timestamps of when the events occurred;

generating a dataset by summing, for each particular timeslot and each particular severity level, a number of events that occurred in that particular timeslot and had that particular severity level;

applying k-means clustering to the dataset to generate first and second cluster sets;

identifying one of the first or second cluster sets as being a target log segment based on the one of the first or second cluster sets having a greater number of events with higher severity levels than another of the first or second cluster sets; and

reporting, to a user, the target log segment.

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 Mar 1, 2021
From: KUMAR, PRAVIN ASHOK; WANG, WEI
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 055442/0520 →