System and method for intelligent update flow across inter and intra update dependencies
Abstract
A method for managing updates of a data manager includes: obtaining a service call graph where the service call graph includes services grouped into service sub-trees and specifies a service hierarchy between the services; identifying the service sub-trees of the service call graph; identifying, using the service hierarchy, independent services among the services of the service call graph; generating, based on identifying the service sub-trees and the independent services, an update sequence for the services; predicting, using the update sequence and the services, an update window for the service sub-trees; and initiating an update of the services using the prediction of the update window.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. A method for managing updates of a data manager, the method comprising:
obtaining a service call graph, wherein the service call graph comprises services grouped into service sub-trees and specifies a service hierarchy between the services;
identifying the service sub-trees of the service call graph;
identifying, using the service hierarchy, independent services among the services of the service call graph;
generating, based on identifying the service sub-trees and the independent services, an update sequence for the services;
predicting, using the update sequence and the services, an update window for the service sub-trees, wherein predicting the update window for the service sub-trees comprises:
obtaining an update completion time of each of the services of the service call graph, wherein all of the services aside from the independent services are dependent services;
identifying the independent services having a same rank and selecting, as a same rank independent service update completion time, a maximum update completion time from among the update completion times of the independent services having the same rank;
initiating generation of a total update completion time for the update window using the same rank independent service update completion time and the update completion times of each of the dependent services;
predicting future requests for services associated with a service sub-tree among the service sub-trees 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 DUWIMs;
initiating an update of the services using the prediction of the update window; and
providing the updated services to a client.
2. The method of claim 1 , wherein each of the service sub-trees comprises services sharing a unique dependency not included in other ones of the service sub-trees.
3. The method of claim 2 , wherein the method further comprises:
specifying, based on the service hierarchy, a rank for each of the service sub-trees and each of the services making up the service call graph,
wherein the update sequence is generated using the rank, and
wherein the rank of a service sub-tree among the service sub-trees is based on a position of the service sub-tree in the service hierarchy.
4. The method of claim 3 , wherein identifying the independent services comprises:
identifying at least two services among the services having a same rank;
initiating a first determination that no services among the services depend directly from both of the at least two services having the same rank; and
initiating a second determination, based on the first determination, that the at least two services having the same rank are the independent services.
5. The method of claim 4 , wherein the independent services having the same rank are updated in parallel.
6. The method of claim 4 , wherein
the update sequence specifies an order in which the services of the service call graph are to be updated, and
the update sequence starts from a service among the services without a dependency to other ones of the services.
7. The method of claim 1 , wherein the update completion time of each of the services of the service call graph is an average update completion time calculated using previous updates of each of the services.
8. The method of claim 7 , wherein the average update completion time is based on one or more time series data.
9. A non-transitory computer readable medium (CRM) 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:
obtaining a service call graph, wherein the service call graph comprises services grouped into service sub-trees and specifies a service hierarchy between the services;
identifying the service sub-trees of the service call graph;
identifying, using the service hierarchy, independent services among the services of the service call graph;
generating, based on identifying the service sub-trees and the independent services, an update sequence for the services;
predicting, using the update sequence and the services, an update window for the service sub-trees, wherein predicting the update window for the service sub-trees comprises:
obtaining an update completion time of each of the services of the service call graph, wherein all of the services aside from the independent services are dependent services;
identifying the independent services having a same rank and selecting, as a same rank independent service update completion time, a maximum update completion time from among the update completion times of the independent services having the same rank;
initiating generation of a total update completion time for the update window using the same rank independent service update completion time and the update completion times of each of the dependent services;
predicting future requests for services associated with a service sub-tree among the service sub-trees 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 DUWIMs;
initiating an update of the services using the prediction of the update window; and
providing the updated services to a client.
10. The CRM of claim 9 , wherein each of the service sub-trees comprises services sharing a unique dependency not included in other ones of the service sub-trees.
11. The CRM of claim 10 , wherein the method further comprises:
specifying, based on the service hierarchy, a rank for each of the service sub-trees and each of the services making up the service call graph,
wherein the update sequence is generated using the rank, and
wherein the rank of a service sub-tree among the service sub-trees is based on a position of the service sub-tree in the service hierarchy.
12. The CRM of claim 11 , wherein identifying the independent services comprises:
identifying at least two services among the services having a same rank;
initiating a first determination that no services among the services depend directly from both of the at least two services having the same rank; and
initiating a second determination, based on the first determination, that the at least two services having the same rank are the independent services.
13. The CRM of claim 12 , wherein the independent services having the same rank are updated in parallel.
14. 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:
obtain a service call graph, wherein the service call graph comprises the services grouped into service sub-trees and specifies a service hierarchy between the services;
identify the service sub-trees of the service call graph;
identify, using the service hierarchy, independent services among the services of the service call graph;
generate, based on identifying the service sub-trees and the independent services, an update sequence for the services;
predict, using the update sequence and the services, an update window for the service sub-trees, wherein predicting the update window for the service sub-trees comprises:
obtaining an update completion time of each of the services of the service call graph, wherein all of the services aside from the independent services are dependent services;
identifying the independent services having a same rank and selecting, as a same rank independent service update completion time, a maximum update completion time from among the update completion times of the independent services having the same rank;
initiating generation of a total update completion time for the update window using the same rank independent service update completion time and the update completion times of each of the dependent services;
predicting future requests for services associated with a service sub-tree among the service sub-trees 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 DUWIMs;
initiate an update of the services using the prediction of the update window; and
provide the updated services to a client.
15. The system of claim 14 , wherein each of the service sub-trees comprises services sharing a unique dependency not included in other ones of the service sub-trees.
16. The system of claim 15 , wherein distributed control manager of the data manager is further configured to:
specify, based on the service hierarchy, a rank for each of the service sub-trees and each of the services making up the service call graph,
wherein the update sequence is generated using the rank, and
wherein the rank of a service sub-tree among the service sub-trees is based on a position of the service sub-tree in the service hierarchy.
17. The system of claim 16 , wherein identifying the independent services comprises:
identifying at least two services among the services having a same rank;
initiating a first determination that no services among the services depend directly from both of the at least two services having the same rank; and
initiating a second determination, based on the first determination, that the at least two services having the same rank are the independent services.
18. The system of claim 17 , wherein the independent services having the same rank are updated in parallel.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.