IP Library Granted Patent US 8,166,005
Granted Patent B2
US 8,166,005 · App. 10/945,653 · Granted Apr 24, 2012

Pathname caching and protection of the root directory in a nested multilayer directory structure

Assignee: EMC Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,166,005
App. No.
10/945,653
Filed
Sep 21, 2004
Granted
Apr 24, 2012
Kind
B2
Art Unit
2157
USPC
707/1
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.

Claims (14)

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.

Assignments (10)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2016
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 040203/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 21, 2004
From: BIXBY, PETER; JIANG, XIAOYE; GUPTA, UDAY; FAIBISH, SORIN
To: EMC CORPORATION
Reel/Frame 015820/0141 →
Continuity (1)
Related Publication 20060074925A1 · Apr 6, 2006