PARALLEL FILE SYSTEM PROCESSING
First Claim
1. A network device, comprising:
- a transceiver to send and receive data over a network; and
a processor configured to include at least one worker thereon that is operative to perform actions, comprising;
receiving a work item to be performed on entries within a file directory;
performing the work item on at least one of the entries within the file directory, progress of performance of the work item being indicated by a pointer location within a key space for the file directory; and
in response to receiving a request to split the file directory, performing actions, including;
indicating that the file directory is splittable, if a directory entry is located within a neighborhood of the pointer location and if a directory entry is located within a neighborhood of a midpoint within the key space; and
orindicating that the file directory is unsplittable, if the directory entry is unlocatable within the neighborhood of the midpoint and the midpoint is located before the location of the pointer.
12 Assignments
0 Petitions
Accused Products
Abstract
A treewalk for splitting a file directory is disclosed for parallel execution of work items over a filesystem. The given work item is assigned to a worker. Thereafter, a request is sent to split the file directory to share a portion of the file directory with another worker. The worker examines the file directory for a next splittable directory entry key after a current in-progress location within a key space for the file directory. If no key is detected, the file directory is identified as unsplittable. If an entry is detected, the key space is progressively searched for a next entry between a next available directory entry key and an upper boundary. The worker identifies the file directory as splittable if the next available entry is found, providing a range of entries within the file directory for which parallel execution of the work item.
-
Citations
29 Claims
-
1. A network device, comprising:
-
a transceiver to send and receive data over a network; and a processor configured to include at least one worker thereon that is operative to perform actions, comprising; receiving a work item to be performed on entries within a file directory; performing the work item on at least one of the entries within the file directory, progress of performance of the work item being indicated by a pointer location within a key space for the file directory; and in response to receiving a request to split the file directory, performing actions, including; indicating that the file directory is splittable, if a directory entry is located within a neighborhood of the pointer location and if a directory entry is located within a neighborhood of a midpoint within the key space; and
orindicating that the file directory is unsplittable, if the directory entry is unlocatable within the neighborhood of the midpoint and the midpoint is located before the location of the pointer. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system of managing changes to entries within a file directory, comprising:
-
a coordinator operating within a processor, that performs actions, including assigning a work item to be performed over entries within the file directory; and a first worker operating within the processor or another processor and performing actions, including; receiving the assigned work item; performing the work item on at least one of the entries within the file directory, progress of performance of the work item being indicated by a pointer location within a key space for the file directory; and in response to receiving a request to split the file directory, performing actions, including; indicating that the file directory is splittable, if a directory entry is located within a neighborhood of the pointer location and if a directory entry is located within a neighborhood of a midpoint within the key space;
orindicating that the file directory is unsplittable, if the directory entry is unlocatable within the neighborhood of the midpoint and the midpoint is located before the location of the pointer. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A method for managing changes to entries within a file directory with a computing device that enables actions, comprising:
-
receiving a work item to be performed on entries within a file directory; performing the work item on at least one of the entries within the file directory, progress of performance of the work item being indicated by a pointer location within a key space for the file directory; and in response to receiving a request to split the file directory, performing actions, including; if a directory entry is located within a neighborhood of the pointer location and if a directory entry is located within a neighborhood of a midpoint within the key space, indicating that the file directory is splittable; and if the directory entry is unlocatable within the neighborhood of the midpoint and the midpoint is located before the location of the pointer, indicating that the file directory is unsplittable. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A processor-readable storage medium that includes data, wherein the execution of the data on a computing device enable actions, comprising:
-
receiving a work item to be performed on entries within a file directory; performing the work item on at least one of the entries within the file directory, progress of performance of the work item being indicated by a pointer location within a key space for the file directory; and in response to receiving a request to split the file directory, performing actions, including; if a directory entry is located within a neighborhood of the pointer location and if a directory entry is located within a neighborhood of a midpoint within the key space, indicating that the file directory is splittable; and if the directory entry is unlocatable within the neighborhood of the midpoint and the midpoint is located before the location of the pointer, indicating that the file directory is unsplittable. - View Dependent Claims (24, 25, 26, 27, 28, 29)
-
Specification