Pathname caching and protection of the root directory in a nested multilayer directory structure
First Claim
1. A storage system comprising:
- a plurality of servers for interconnection in a data network for servicing client requests for data, the servers storing a nested multilayer directory structure distributed among the servers and indexing the data,wherein the storage system is programmed to store a global index to the nested multilayer directory structure, the global index is an abstract of the nested multilayer directory structure, the global index identifies respective portions of the nested multilayer directory structure that are stored in respective ones of the servers, and the global index identifies paths through the nested multilayer directory structure linking the respective portions of the nested multilayer directory structure, andwherein the storage system is further programmed to perform a top-down search of the nested multilayer directory structure in response to a client request, and upon finding that a portion of the nested multilayer directory structure is offline so as to be inaccessible for searching, to search the global index for portions of the nested multilayer directory structure that are located below the offline portion of the nested multilayer directory structure;
wherein each of at least some of the servers is programmed to take over responsibility for maintenance of a respective portion of the nested multilayer directory structure by broadcasting an intention to take over responsibility for maintenance of the respective portion of the nested multilayer directory structure, receiving replies from the other of said at least some of the servers, resolving conflict in the replies, and taking over responsibility for maintenance of the respective portion of the nested multilayer directory structure upon resolving the conflict in favor of said each of at least some of the servers.
9 Assignments
0 Petitions
Accused Products
Abstract
Servers in a storage system store a nested multilayer directory structure, and a global index that is an abstract of the directory structure. The global index identifies respective portions of the directory structure that are stored in respective ones of the servers, and the global index identifies paths through the directory structure linking the respective portions. Upon performing a top-down search of the directory structure in response to a client request and finding that a portion of it is offline, the global index is searched to discover portions of the directory structure that are located below the offline portion. The global index may also identify the respective server storing each of the respective portions of the directory structure, and may indicate whether or not each of the respective portions of the directory structure is known to be offline.
-
Citations
3 Claims
-
1. A storage system comprising:
-
a plurality of servers for interconnection in a data network for servicing client requests for data, the servers storing a nested multilayer directory structure distributed among the servers and indexing the data, wherein the storage system is programmed to store a global index to the nested multilayer directory structure, the global index is an abstract of the nested multilayer directory structure, the global index identifies respective portions of the nested multilayer directory structure that are stored in respective ones of the servers, and the global index identifies paths through the nested multilayer directory structure linking the respective portions of the nested multilayer directory structure, and wherein the storage system is further programmed to perform a top-down search of the nested multilayer directory structure in response to a client request, and upon finding that a portion of the nested multilayer directory structure is offline so as to be inaccessible for searching, to search the global index for portions of the nested multilayer directory structure that are located below the offline portion of the nested multilayer directory structure; wherein each of at least some of the servers is programmed to take over responsibility for maintenance of a respective portion of the nested multilayer directory structure by broadcasting an intention to take over responsibility for maintenance of the respective portion of the nested multilayer directory structure, receiving replies from the other of said at least some of the servers, resolving conflict in the replies, and taking over responsibility for maintenance of the respective portion of the nested multilayer directory structure upon resolving the conflict in favor of said each of at least some of the servers.
-
-
2. A method of operating a storage system having a plurality of servers interconnected in a data network for servicing client requests for data, the servers storing a nested multilayer directory structure distributed among the servers and indexing the data, said method comprising:
-
maintaining, in storage of the storage system, a global index to the nested multilayer directory structure, the global index being an abstract of the nested multilayer directory structure, the global index identifying respective portions of the nested multilayer directory structure in respective ones of the servers, and the global index identifying paths through the nested multilayer directory structure linking the respective portions of the nested multilayer directory structure; and performing a top-down search of the nested multilayer directory structure in search of a file in response to a client request, and upon finding that a portion of the nested multilayer directory structure is offline so as to be inaccessible for searching, searching the global index for portions of the nested multilayer directory structure that are located below the offline portion of the nested multilayer directory structure, and searching at least one of said portions of the nested multilayer directory structure below the offline portion of the nested multilayer directory structure to find the file and to return to the client a file handle to the file; which includes one of the servers taking over responsibility for maintenance of a respective portion of the nested multilayer directory structure by broadcasting an intention to take over responsibility for maintenance of the respective portion of the nested multilayer directory structure, receiving replies from the other of said at least some of the servers, resolving conflict in the replies, and taking over responsibility for maintenance of the respective portion of the nested multilayer directory structure upon resolving the conflict in favor of said one of the servers.
-
-
3. A storage system comprising:
-
a plurality of data mover computers and at least one storage array coupled to the data mover computers for interconnection in a data network for servicing client requests for data stored in the storage array, the data mover computers being programmed for accessing a nested multilayer directory structure so that respective ones of the data mover computers manage access to respective portions of the nested multilayer directory structure, wherein the storage system is programmed to store a global index to the nested multilayer directory structure, the global index is an abstract of the nested multilayer directory structure, the global index identifies the respective portions of the nested multilayer directory structure and the respective ones of the data mover computers that manage access to the respective portions of the nested multilayer directory structure, and the global index identifies paths through the nested multilayer directory structure linking the respective portions of the nested multilayer directory structure, wherein the storage system is further programmed to perform a top-down search of the nested multilayer structure in response to a client request, and upon finding that a portion of the nested multilayer directory structure is offline so as to be inaccessible for searching, to search the global index for portions of the nested multilayer directory structure that are located below the offline portion of the nested multilayer directory structure, and wherein each of at least some of the data mover computers is programmed to take over responsibility for managing access to a respective portion of the nested multilayer directory structure by broadcasting an intention to take over responsibility for managing access to the respective portion of the nested multilayer directory structure, receiving replies from the other of said at least some of the data movers, resolving conflict in the replies, and taking over responsibility for managing access to the respective portion of the nested multilayer directory structure upon resolving the conflict in favor of said each of at least some of the data movers.
-
Specification