Confined recovery in a distributed computing system

US9727425B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9727425-B1
Application numberUS-201514703108-A
CountryUS
Kind codeB1
Filing dateMay 4, 2015
Priority dateApr 20, 2011
Publication dateAug 8, 2017
Grant dateAug 8, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Executing a confined recovery in a distributed system having a plurality of worker systems including a failed worker system at a current superstep. The confined recovery includes determining states of the partitions of the worker systems during the supersteps preceding the current superstep, and determining a recovery initiation superstep preceding the current superstep in which all messages for recovery initiation superstep are available. The recovery initiation superstep is determined responsive to determining the states of the partitions. Additionally, a recovery set of partitions is determined for which messages in supersteps after the recovery initiation superstep are not available. The worker systems having the partitions in the recovery set are instructed to execute the defined function for the partitions in the recovery set starting at the recovery initiation superstep to recover the lost exchanged messages.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method for executing a confined recovery in a distributed computing system having a plurality of worker systems, the worker systems executing a computation in a plurality of supersteps, the worker systems having a plurality of partitions executing a defined function during the supersteps that exchange messages with partitions of other worker systems, the method comprising: in response to a checkpoint criteria having been met at a particular superstep, transmitting a message to the worker systems to instruct them to save a current state of their assigned partitions to a persistent storage; detecting a failed worker system, and in response: determining, based on information stored in persistent storage, a previous superstep from which a recovery can be conducted and a recovery set of partitions that need to execute the defined function to recover from the failure; assigning the recovery set of partitions to a recovery worker system and instructing the recovery worker system to execute the defined function; instructing messaging worker systems with partitions not included in the recovery set to retrieve their outgoing messages sent to the failed worker system from the persistent storage and transmit them to the recovery worker system, creating a group status message indicating whether each of the messaging worker systems succeeded in transmitting its outgoing messages, and transmitting the group status message to each of the plurality of worker systems. 2. The method of claim 1 , further comprising: receiving a plurality of status messages from the messaging worker systems, each status message indicating whether a messaging worker system succeeded in transmitting its outgoing messages. 3. The method of claim 1 , wherein the recovery worker system includes a proper subset of the plurality of worker systems. 4. The method of claim 1 , wherein the messaging worker systems include a proper subset of the plurality of worker systems. 5. The method of claim 1 , wherein determining previous superstep from which a recovery can be conducted includes identifying that messages for the previous superstep are available in persistent storage. 6. The method of claim 1 , wherein the recovery worker system includes at least one of the plurality of worker systems that has not failed. 7. The method of claim 1 , wherein instructing the messaging worker systems to transmit outgoing message to the recovery worker system includes instructing the messaging worker systems to transmit messages that are not available to the recovery worker system. 8. A non-transitory, computer-readable medium storing instructions operable when executed to cause at least one processor to perform operations for executing a confined recovery in a distributed computing system having a plurality of worker systems, the worker systems executing a computation in a plurality of supersteps, the worker systems having a plurality of partitions executing a defined function during the supersteps that exchange messages with partitions of other worker systems, the operations comprising: in response to a checkpoint criteria having been met at a particular superstep, transmitting a message to the worker systems to instruct them to save a current state of their assigned partitions to a persistent storage; detecting a failed worker system, and in response: determining, based on information stored in persistent storage, a previous superstep from which a recovery can be conducted and a recovery set of partitions that need to execute the defined function to recover from the failure; assigning the recovery set of partitions to a recovery worker system and instructing the recovery worker system to execute the defined function; instructing messaging worker systems with partitions not included in the recovery set to retrieve their outgoing messages sent to the failed worker system from the persistent storage and transmit them to the recovery worker system; creating a group status message indicating whether each of the messaging worker systems succeeded in transmitting its outgoing messages; and transmitting the group status message to each of the plurality of worker systems. 9. The computer-readable medium of claim 8 , the operations further comprising: receiving a plurality of status messages from the messaging worker systems, each status message indicating whether a messaging worker system succeeded in transmitting its outgoing messages. 10. The computer-readable medium of claim 8 , wherein the recovery worker system includes a proper subset of the plurality of worker systems. 11. The computer-readable medium of claim 8 , wherein the messaging worker systems include a proper subset of the plurality of worker systems. 12. The computer-readable medium of claim 8 , wherein determining previous superstep from which a recovery can be conducted includes identifying that messages for the previous superstep are available in persistent storage. 13. The computer-readable medium of claim 8 , wherein the recovery worker system includes at least one of the plurality of worker systems that has not failed. 14. The computer-readable medium of claim 8 , wherein instructing the messaging worker systems to transmit outgoing message to the recovery worker system includes instructing the messaging worker systems to transmit messages that are not available to the recovery worker system. 15. A system for executing a confined recovery in a distributed computing system having a plurality of worker systems, the worker systems executing a computation in a plurality of supersteps, the worker systems having a plurality of partitions executing a defined function during the supersteps that exchange messages with partitions of other worker systems, the system comprising: memory for storing data; and one or more processors operable to perform operations comprising: in response to a checkpoint criteria having been met at a particular superstep, transmitting a message to the worker systems to instruct them to save a current state of their assigned partitions to a persistent storage; detecting a failed worker system, and in response: determining, based on information stored in persistent storage, a previous superstep from which a recovery can be conducted and a recovery set of partitions that need to execute the defined function to recover from the failure; assigning the recovery set of partitions to a recovery worker system and instructing the recovery worker system to execute the defined function; instructing messaging worker systems with partitions not included in the recovery set to retrieve their outgoing messages sent to the failed worker system from the persistent storage and transmit them to the recovery worker system; creating a group status message indicating whether each of the messaging worker systems succeeded in transmitting its outgoing messages; and transmitting the group status message to each of the plurality of worker systems. 16. The system of claim 15 , the operations further comprising: receiving a plurality of status messages from the messaging worker systems, each status message indicating whether a messaging worker system succeeded in transmitting its outgoing messages. 17. The system of claim 15 , wherein the recovery worker system includes a proper subset of the plurality of worker systems. 18. The system of claim 15 , wherein the messaging worker systems include a proper subset of the plurality of worker systems. 19. The system of claim 15

Assignees

Inventors

Classifications

  • Information retrieval; Database structures therefor; File system structures therefor · CPC title

  • Graphs; Linked lists (G06F16/9027 takes precedence) · CPC title

  • Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor · CPC title

  • Tablespace storage structures; Management thereof · CPC title

  • for networked environments · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9727425B1 cover?
Executing a confined recovery in a distributed system having a plurality of worker systems including a failed worker system at a current superstep. The confined recovery includes determining states of the partitions of the worker systems during the supersteps preceding the current superstep, and determining a recovery initiation superstep preceding the current superstep in which all messages fo…
Who is the assignee on this patent?
Google Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/9024. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 08 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).