Serverless distributed file system
First Claim
Patent Images
1. A method used in managing a serverless distributed file system, the method comprising:
- managing directories of the file system using Byzantine groups and a hierarchical namespace; and
managing files within the directories without using Byzantine groups by saving replicas of the files to fewer computers than exist in the Byzantine groups.
2 Assignments
0 Petitions
Accused Products
Abstract
A serverless distributed file system manages the storage of files and directories using one or more directory groups. The directories may be managed using Byzantine-fault-tolerant groups, whereas files are managed without using Byzantine-fault-tolerant groups. Additionally, the file system may employ a hierarchical namespace to store files. Furthermore, the directory group may employ a plurality of locks to control access to objects (e.g., files and directories) in each directory.
199 Citations
20 Claims
-
1. A method used in managing a serverless distributed file system, the method comprising:
-
managing directories of the file system using Byzantine groups and a hierarchical namespace; and managing files within the directories without using Byzantine groups by saving replicas of the files to fewer computers than exist in the Byzantine groups. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method implemented in a computing device of a serverless distributed file system, the method comprising:
-
checking a local cache of pathnames to Byzantine-fault-tolerant directory group mappings to determine a mapping for a longest prefix of a desired pathname; and if the entire pathname is mapped to a Byzantine-fault-tolerant directory group using the local cache, then accessing a member of the Byzantine-fault-tolerant directory group to determine where to locate a file corresponding to the pathname, and otherwise repeating the following until the entire pathname is mapped to a Byzantine-fault-tolerant directory group, obtaining, from a member of the Byzantine-fault-tolerant directory group corresponding to the longest prefix of the desired pathname, mappings for a relevant subtree from the longest prefix, and if the entire pathname is not mapped to a Byzantine-fault-tolerant directory group using the relevant subtree from the longest prefix, then repeating the obtaining with the longest prefix being the previously used longest prefix concatenated with the relevant subtree. - View Dependent Claims (7, 8, 9, 10, 11, 12)
-
-
13. A computer comprising:
-
a processor; and a memory coupled to the processor, wherein; the memory is to store a plurality of instructions to implement a file system using a hierarchical namespace to store files, the file system is distributed across a plurality of computers including the computer, each of the plurality of computers can operate as both a client computer and a server computer, each of the plurality of computers need not trust the other ones of the plurality of computers, files and corresponding directory entries are stored in the file system, and for any given file that is stored in the file system, a number of copies of the file and a number of copies of the corresponding directory entry are stored, and a lesser number of copies of the file are stored than the number of copies of the corresponding directory entry that are stored. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
Specification