摘要:
Systems and methods for finding multiple shortest paths. A directed graph representing web resources and links are divided into shards, each shard comprising a portion of the graph representing multiple web resources. Each of the shards is assigned to a server, and a distance table is calculated in parallel for each of the web resources in each shard using a nearest seed computation in the server to which the shard was assigned.
摘要:
Systems and methods for checkpointing a computation distributed over multiple peer servers. On each server, sequentially storing checkpoints collectively representing a current state of the computation on that server as of a most recent checkpoint, each checkpoint having a checkpoint timestamp. When restarting a first server, rebuilding a most recent state of the first server from the checkpoints written by the first server through a most recent checkpoint having a most recent checkpoint timestamp, and requesting from each of the other peer servers updates from the most recent checkpoint timestamp time of the first server. On each server, in response to a first request for updates as of a particular time, deriving the requested updates from the state data in the server uncommitted to a checkpoint and the state data in checkpoints of the server that have a timestamp no earlier than the particular time of the first request, and providing the requested updates to the first server.