Fault tolerance scheme for distributed hyperlink database
AssigneeMicrosoft Corporation
InventorMarc Alexander Najork
Life of this patent
Estimating the term…
Abstract
Fault tolerance is provided for a database of hyperlinks distributed across multiple machines, such as a scalable hyperlink store. The fault tolerance enables the distributed database to continue operating, with brief interruptions, even when some of the machines in the cluster have failed. A primary database is provided for normal operation, and a secondary database is provided for operation in the presence of failures.
Claims20
A fault tolerance method for a distributed database system comprising a cluster of machines, each machine comprising a memory and a disk storage, the method comprising:
- detecting a failure of at least one machine in the cluster of machines;
- notifying surviving machines in the cluster of machines about the failure of the at least one machine;
- evicting a plurality of primary store partitions from the memory of a subset of the surviving machines;
- loading at least one secondary store partition into the memory of the subset of the surviving machines from which the primary store partitions were evicted;
- and
- resuming service in a degraded mode using the at least one secondary store partition stored in the memory of the subset of the surviving machines.
A fault tolerance system, comprising:
- a plurality of machines, each machine comprising a memory and a disk storage;
- a fault detector for detecting a failure of at least one machine;
- a primary database stored across the plurality of machines in the memory of the machines;
- and
- a secondary database stored across a portion of the plurality of machines in the disk storage of the machines and loaded into memory of one or more surviving machines for use when one or more machines have failed.
A fault tolerance system, comprising:
- a plurality of machines, each machine comprising a memory and a disk storage;
- and
- a distributed database comprising a primary database and a secondary database;
- wherein the primary database is stored across the plurality of machines;
- and
- wherein the secondary database is stored across a portion of the plurality of machines, and
- wherein the primary database and secondary database each comprise a uniform resource locator (URL) store, a forward link store, and a backward link store.
Dependencies are inferred from the claim text.