File availability in distributed file storage systems
First Claim
Patent Images
1. A method for determining location to store object replicas, the method comprising:
- receiving an indication of a homeless replica of an object, wherein the object has a plurality of replicas including the homeless replica;
determining an initial placement for the homeless replica, wherein the initial placement is one of a plurality of devices in a system;
evaluating, on an object by object basis, whether any replicas of the object can be swapped with one of a plurality of replicas of an other object and not reduce a combined object availability of the two objects, wherein the evaluating comprises determining, for each possible swapping of replicas of objects, an object availability for each object, and checking whether any of the possible swappings result in a combined object availability of two objects that is greater than other combined object availability prior to the evaluating; and
swapping a replica of the object with the one of the plurality of replicas of the other object, wherein the swapping is based on the evaluating and performed only if the swapping does not reduce the combined object availability of the two objects, wherein the replica of the object is stored on a first computing device and wherein the swapping the replicas comprises moving the replica of the object to a second computing device, storing the moved replica of the object in the second computing device and moving the one of the plurality of replicas of the other object to the first computing device, wherein the swapping results in decreasing an availability of the object and increasing an availability of the other object.
1 Assignment
0 Petitions
Accused Products
Abstract
File availability in distributed file storage systems is improved by initially placing replicas of a file or other object on different ones of multiple devices using a first process. Subsequently, the placement of the replicas is improved by evaluating whether any replicas of a first file can be swapped with any replicas of a second file without a reduction in the combined file availability of the first and second files, and swapping a replica of the first file with a replica of the second file if the swapping results in no reduction in the combined file availability of the first and second files.
-
Citations
12 Claims
-
1. A method for determining location to store object replicas, the method comprising:
-
receiving an indication of a homeless replica of an object, wherein the object has a plurality of replicas including the homeless replica; determining an initial placement for the homeless replica, wherein the initial placement is one of a plurality of devices in a system; evaluating, on an object by object basis, whether any replicas of the object can be swapped with one of a plurality of replicas of an other object and not reduce a combined object availability of the two objects, wherein the evaluating comprises determining, for each possible swapping of replicas of objects, an object availability for each object, and checking whether any of the possible swappings result in a combined object availability of two objects that is greater than other combined object availability prior to the evaluating; and swapping a replica of the object with the one of the plurality of replicas of the other object, wherein the swapping is based on the evaluating and performed only if the swapping does not reduce the combined object availability of the two objects, wherein the replica of the object is stored on a first computing device and wherein the swapping the replicas comprises moving the replica of the object to a second computing device, storing the moved replica of the object in the second computing device and moving the one of the plurality of replicas of the other object to the first computing device, wherein the swapping results in decreasing an availability of the object and increasing an availability of the other object. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. One or more computer readable storage media having stored thereon a plurality of instructions that, when executed by one or more processors of a computing device, causes the one or more processors to perform acts comprising:
-
working, in conjunction with one or more other processors of by other computing device, to determine whether a replica of a file managed by the computing device and a replica of an other file managed by the other computing device can be swapped with one another to bring an availability of the file and an availability of the other file closer, wherein said working comprises determining, for the replicas, an availability for each replica and checking whether the swapping results in a combined availability of two replicas that is greater than other combined availability if the files were not to be swapped; and swapping the replica of the file and the replica of the other file only if the swapping brings the availability of the file and the availability of the other file closer, wherein said swapping comprises communicating with a first device on which the replica of the file is stored and a second device on which the replica of the other file is stored to have the first device transfer the replica of the file to the second device and delete the replica of the file on the first device, and to have the second device transfer the replica of the other file to the first device and delete the replica of the other file on the second device, wherein the swapping results in decreasing an availability of the replica of the file and increasing the availability of the replica of the other file. - View Dependent Claims (9, 10, 11, 12)
-
Specification