Service Pool Architecture For Multitenant Services To Support Canary Release
US-2020065086-A1 · Feb 27, 2020 · US
US11429417B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11429417-B2 |
| Application number | US-201916527428-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 31, 2019 |
| Priority date | Jul 31, 2019 |
| Publication date | Aug 30, 2022 |
| Grant date | Aug 30, 2022 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A data management system comprises: a storage appliance configured to store a snapshot of a virtual machine; and one or more processors in communication with the storage appliance. The one or more processors are configured to perform operations including: identifying a plurality of shards of the virtual machine; requesting a snapshot of each of the plurality of shards; receiving the shards asynchronously; ordering the received snapshot shards sequentially into a results queue; and storing a single snapshot of the virtual machine based on the ordered snapshot shards. Operations may further include maintaining a flow control queue that limits the number of snapshot shards requested.
Opening claim text (preview).
The invention claimed is: 1. A data management system, comprising: a memory configured to store a snapshot of an entire virtual machine; one or more processors in communication with the memory, the one or more processors configured to perform operations including: determining a number of shards to be created for the entire virtual machine based on a current network condition; in response to determining the number of shards, sharding the entire virtual machine to the determined number of shards; identifying a plurality of shards of the entire virtual machine, a number of the identified plurality of shards equal to the determined number of shards; requesting a snapshot of each of the plurality of shards; receiving the requested snapshots of each of the plurality of shards asynchronously; ordering the received snapshots of each of the plurality of shards sequentially into a result queue; and storing a single snapshot of the entire virtual machine based on the ordered snapshots of each of the plurality of shards. 2. The system of claim 1 , wherein the operations further include maintaining a flow control queue that limits a number of snapshots of shards requested. 3. The system of claim 2 , wherein the operations further include maintaining a receive token queue and transferring a token from the flow control queue to the receive token queue upon receiving a requested snapshot of one of the plurality of shards. 4. The system of claim 3 , wherein the operations further include maintaining an offset-slot mapping indicating ordering of the snapshots of each of the plurality of shards. 5. The system of claim 1 , wherein the operations further include presenting the ordered snapshots of each of the plurality of shards sequentially to a read application programming interface. 6. The system of claim 1 , wherein the operations further include enforcing Secure Sockets Layer in the receiving the requested snapshots of each of the plurality of shards asynchronously. 7. A computer-implemented method at a data management system, the method comprising: determining a number of shards to be created for an entire virtual machine based on a current network condition; in response to determining the number of shards, sharding the entire virtual machine to the determined number of shards; identifying a plurality of shards of the entire virtual machine, a number of the identified plurality of shards equal to the determined number of shards; requesting a snapshot of each of the plurality of shards; receiving the requested snapshots of each of the plurality of shards asynchronously; ordering the received snapshots of each of the plurality of shards sequentially into a result queue; and storing a single snapshot of the entire virtual machine based on the ordered snapshots of each of the plurality of shards. 8. The method of claim 7 , further comprising maintaining a flow control queue that limits a number of snapshots of shards requested. 9. The method of claim 8 , further comprising maintaining a receive token queue and transferring a token from the flow control queue to the receive token queue upon receiving a requested snapshot of one of the plurality of shards. 10. The method of claim 9 , further comprising maintaining an offset-slot mapping indicating ordering of the snapshots of each of the plurality of shards. 11. The method of claim 7 , further comprising presenting the ordered snapshots of each of the plurality of shards sequentially to a read application programming interface. 12. The method of claim 7 , further comprising enforcing Secure Sockets Layer in the receiving the requested snapshots of each of the plurality of shards asynchronously. 13. A non-transitory, machine-readable medium storing instructions which, when read by a machine, cause the machine to perform operations comprising, at least: determining a number of shards to be created for an entire virtual machine based on a current network condition; in response to determining the number of shards, sharding the entire virtual machine to the determined number of shards; identify a plurality of shards of the entire virtual machine, a number of the identified plurality of shards equal to the determined number of shards; requesting a snapshot of each of the plurality of shards; receiving the requested snapshots of each of the plurality of shards asynchronously; ordering the received snapshots of each of the plurality of shards sequentially into a result queue; and storing a single snapshot of the entire virtual machine based on the ordered snapshots of each of the plurality of shards. 14. The medium of claim 13 , wherein the operations further include maintaining a flow control queue that limits a number of snapshots of shards requested. 15. The medium of claim 14 , wherein the operations further include maintaining a receive token queue and transferring a token from the flow control queue to the receive token queue upon receiving a requested snapshot of one of the plurality of shards. 16. The medium of claim 15 , wherein the operations further include maintaining an offset-slot mapping indicating ordering of the snapshots of each of the plurality of shards. 17. The medium of claim 13 , wherein the operations further include presenting the ordered snapshots of each of the plurality of shards sequentially to a read application programming interface. 18. The medium of claim 13 , wherein the operations further include enforcing Secure Sockets Layer in the receiving the requested snapshots of each of the plurality of shards asynchronously.
Hypervisor-specific management and integration aspects · CPC title
Memory management, e.g. access or allocation · CPC title
using de-duplication of the data · CPC title
Virtual · CPC title
Using snapshots, i.e. a logical point-in-time copy of the data · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.