IP Library Granted Patent US 11,330,078
Granted Patent B1
US 11,330,078 · App. 17/386,402 · Granted May 10, 2022

Method and system for managing updates of a data manager

Inventors: Shelesh Chopra (Bangalore, IN); Hemant Ramesh Gaikwad (Bangalore, IN); Rahul Deo Vishwakarma (Bangalore, IN)
Assignee: EMC IP Holding Company LLC
H04L67/32
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,330,078
App. No.
17/386,402
Granted
May 10, 2022
Kind
B1
Abstract

Techniques described herein relate to a method for deploying workflows with data management services. The method may include identifying a service update event; identifying a service sub-tree based on a service call graph; generating an update sequence for the service sub-tree; predicting an update window for the service sub-tree; selecting a first service of the service sub-tree based on the update sequence, wherein the first service includes a first standby service instance and a first active service instance; generating a backup of a first portion of a services shared data volume repository associated with the first service; applying an update to the first standby service instance to obtain a first updated active service instance; making a first determination that a first performance and reliability check associated with the first updated active service instance is below a threshold; applying the update to a second standby service instance.

Claims (91)

1. A method for managing updates of a data manager, the method comprising:

identifying, by a distributed control manager of a data manager, a service update event, wherein the data manager comprises services;

in response to identifying the service update event:

identifying a service sub-tree based on a service call graph;

generating an update sequence for the service sub-tree using the service call graph;

predicting an update window for the service sub-tree;

selecting a first service of the service sub-tree based on the update sequence, wherein the first service comprises a first standby service instance and a first active service instance;

generating a backup of a first portion of a services shared data volume repository associated with the first service;

applying a first portion of an update to the first standby service instance to obtain a first updated active service instance;

making a first determination that a first performance and reliability check associated with the first updated active service instance is below a threshold; and

in response to the first determination:

applying the first portion of the update to a second standby service instance, wherein the second standby service instance comprises the first active service instance.

2. The method of claim 1 , wherein applying the first portion of the update to the first standby service instance comprises changing the first active service instance to the second standby service instance.

3. The method of claim 2 , wherein the service call graph specifies a hierarchical relationship between the services.

4. The method of claim 3 , wherein the update sequence specifies an order in which the services of the service sub-tree is to be updated.

5. The method of claim 1 , wherein predicting the update window for the service sub-tree comprises:

predicting service sub-tree update completion time;

predicting future requests for services associated with the service sub-tree to obtain a future request density transition set;

performing peak smoothing on the future request density transition set;

performing continuous accuracy improvement to obtain an updated future request density transition set;

identifying dynamic update window identification markings (DUWIMs) for the service sub-tree based on the updated future request density transition set; and

identifying the update window using the DUWIMs.

6. The method of claim 1 , the method further comprising:

after applying the first portion of the update to the second standby service instance:

selecting a second service of the service sub-tree based on the update sequence, wherein the second service comprises a third standby service instance and a second active service instance;

generating a backup of a second portion of a services shared data volume repository associated with the second service;

applying a second portion of an update to the third standby service instance to obtain a second updated active service instance;

making a second determination that a second performance and reliability check associated with the second updated active service instance is above a threshold; and

in response to the second determination:

reversing the second portion of the update to the second updated active service instance to obtain the third standby service instance.

7. The method of claim 1 , the method further comprising:

prior to the identifying a service update event:

identifying, by a discovery manager of the data manager, a service change event; and

updating a service routing table based on the service change event.

8. The method of claim 7 , wherein the service update event comprises one selected from a group consisting of:

obtaining a service registration request; and

a timeout of a service.

9. A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor enables the computer processor to perform a method for managing updates of a data manager, the method comprising:

identifying, by a distributed control manager of a data manager, a service update event, wherein the data manager comprises services;

in response to identifying the service update event:

identifying a service sub-tree based on a service call graph;

generating an update sequence for the service sub-tree using the service call graph;

predicting an update window for the service sub-tree;

selecting a first service of the service sub-tree based on the update sequence, wherein the first service comprises a first standby service instance and a first active service instance;

generating a backup of a first portion of a services shared data volume repository associated with the first service;

applying a first portion of an update to the first standby service instance to obtain a first updated active service instance;

making a first determination that a first performance and reliability check associated with the first updated active service instance is below a threshold; and

in response to the first determination:

applying the first portion of the update to a second standby service instance, wherein the second standby service instance comprises the first active service instance.

10. The non-transitory computer readable medium of claim 9 , wherein applying the first portion of the update to the first standby service instance comprises changing the first active service instance to the second standby service instance.

11. The non-transitory computer readable medium of claim 10 , wherein the service call graph specifies a hierarchical relationship between the services.

12. The non-transitory computer readable medium of claim 11 , wherein the update sequence specifies an order in which the services of the service sub-tree is to be updated.

13. The non-transitory computer readable medium of claim 9 , wherein predicting the update window for the service sub-tree comprises:

predicting service sub-tree update completion time;

predicting future requests for services associated with the service sub-tree to obtain a future request density transition set;

performing peak smoothening on the future request density transition set;

performing continuous accuracy improvement to obtain an updated future request density transition set;

identifying dynamic update window identification markings (DUWIMs) for the service sub-tree based on the updated future request density transition set; and

identifying the update window using the DUWIMs.

14. The non-transitory computer readable medium of claim 9 , the method further comprising:

after applying the first portion of the update to the second standby service instance:

selecting a second service of the service sub-tree based on the update sequence, wherein the second service comprises a third standby service instance and a second active service instance;

generating a backup of a second portion of a services shared data volume repository associated with the second service;

applying a second portion of an update to the third standby service instance to obtain a second updated active service instance;

making a second determination that a second performance and reliability check associated with the second updated active service instance is above a threshold; and

in response to the second determination:

reversing the second portion of the update to the second updated active service instance to obtain the third standby service instance.

15. The non-transitory computer readable medium of claim 9 , the method further comprising:

prior to the identifying a service update event:

identifying, by a discovery manager of the data manager, a service change event; and

updating a service routing table based on the service change event.

16. The non-transitory computer readable medium of claim 15 , wherein the service update event comprises one selected from a group consisting of:

obtaining a service registration request; and

a timeout of a service.

17. A system for managing updates of a data manager, the system comprising:

a data manager comprising services;

a distributed control manager of the data manager, comprising a processor and memory, configured to:

identify a service update event;

in response to identifying the service update event:

identify a service sub-tree based on a service call graph;

generate an update sequence for the service sub-tree using the service call graph;

predict an update window for the service sub-tree;

select a first service of the service sub-tree based on the update sequence, wherein the first service comprises a first standby service instance and a first active service instance;

generate a backup of a first portion of a services shared data volume repository associated with the first service;

apply a first portion of an update to the first standby service instance to obtain a first updated active service instance;

make a first determination that a first performance and reliability check associated with the first updated active service instance is below a threshold; and

in response to the first determination:

apply the first portion of the update to a second standby service instance, wherein the second standby service instance comprises the first active service instance.

18. The system of claim 17 , wherein applying the first portion of the update to the first standby service instance comprises changing the first active service instance to the second standby service instance.

19. The system of claim 18 , wherein the service call graph specifies a hierarchical relationship between the services.

20. The system of claim 19 , wherein the update sequence specifies an order in which the services of the service sub-tree is to be updated.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (058014/0560) 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/0473 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057931/0392) 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/0382 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057758/0286) 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 061654/0064 →
SECURITY INTEREST Recorded Oct 6, 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 058014/0560 →
SECURITY INTEREST Recorded Oct 6, 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 057758/0286 →
SECURITY INTEREST Recorded Oct 6, 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 057931/0392 →
SECURITY AGREEMENT Recorded Oct 1, 2021
From: DELL PRODUCTS, L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 057682/0830 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2021
From: CHOPRA, SHELESH; GAIKWAD, HEMANT RAMESH; VISHWAKARMA, RAHUL DEO
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 057424/0069 →
Priority Claims (1)
IN 202141026048 · Jun 11, 2021 · national