File Availability in Distributed File Storage Systems
First Claim
1. A method for determining where 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 another object and not reduce a combined object availability of the two objects; and
swapping a replica of the object with the one of the plurality of replicas of the other object only if the swapping does not reduce the combined object availability of the two objects.
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.
115 Citations
20 Claims
-
1. A method for determining where 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 another object and not reduce a combined object availability of the two objects; and
swapping a replica of the object with the one of the plurality of replicas of the other object only if the swapping does not reduce the combined object availability of the two objects. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. One or more computer readable 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 another computing device, to determine whether a replica of a file managed by the computing device and a replica of another 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; 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. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A method, implemented in a directory group, the method comprising:
-
selecting another directory group to participate with in a replica placement improvement process;
selecting a file maintained by the directory group;
determining whether exchanging a replica of the file with a replica of another file maintained by the other directory group will increase a combined file availability of the files; and
having the replica of the file and the replica of the other file exchanged if exchanging the replicas will increase the combined file availability of the files. - View Dependent Claims (18, 19, 20)
-
Specification