Using a file path to determine file locality for applications
First Claim
Patent Images
1. A method comprising:
- identifying a path name and a volume identifier of a file that is stored in a file system associated with a plurality of storage servers, the file being associated with a system call from a map/reduce-based application;
mounting the file system via a mount-point by using the volume identifier;
determining an extended attribute request by converting the system call from the map/reduce-based application to an executable routine to be used by the file system;
sending, by a processing device, the extended attribute request to the mount-point, the extended attribute request comprising the path name to a server computer system to identify a physical location of the file at a storage server of the plurality of storage servers in the file system, wherein the file system comprises a virtual extended attribute that identifies the physical location of the file in view of a hash value associated with the path name in the request;
receiving a response from the server computer system indicating the physical location of the file at the storage server in the file system in view of the hash value associated with the path name in the request, the received response comprising a directory name that is associated with the physical location of the file in the file system;
creating a job request for the file in view of a closeness of the physical location of the file in the file system from the received response to a physical location of another storage server to operate on the file at the storage server in the file system in view of the job request; and
sending the job request to a master storage server to combine results of an operation on the file with additional results associated with an additional job request.
1 Assignment
0 Petitions
Accused Products
Abstract
A processing device identifies a path name of a file that is stored in a file system and sends an extended attribute request comprising the path name to a server computer system to identify a physical location of the file in the file system. The file system includes a virtual extended attributes that identify the physical location of the file that corresponds to the path name in the request. The processing device receives a response from the server computer system indicating the physical location of the file in the file system.
18 Citations
15 Claims
-
1. A method comprising:
-
identifying a path name and a volume identifier of a file that is stored in a file system associated with a plurality of storage servers, the file being associated with a system call from a map/reduce-based application; mounting the file system via a mount-point by using the volume identifier; determining an extended attribute request by converting the system call from the map/reduce-based application to an executable routine to be used by the file system; sending, by a processing device, the extended attribute request to the mount-point, the extended attribute request comprising the path name to a server computer system to identify a physical location of the file at a storage server of the plurality of storage servers in the file system, wherein the file system comprises a virtual extended attribute that identifies the physical location of the file in view of a hash value associated with the path name in the request; receiving a response from the server computer system indicating the physical location of the file at the storage server in the file system in view of the hash value associated with the path name in the request, the received response comprising a directory name that is associated with the physical location of the file in the file system; creating a job request for the file in view of a closeness of the physical location of the file in the file system from the received response to a physical location of another storage server to operate on the file at the storage server in the file system in view of the job request; and sending the job request to a master storage server to combine results of an operation on the file with additional results associated with an additional job request. - View Dependent Claims (2, 3, 4, 5, 7, 8)
-
-
6. A method comprising:
-
identifying a system call associated with a file from a map/reduce-based application; receiving an extended attribute request from a client computer device, wherein the extended attribute request indicates a path name and a volume identifier of a file in a file system associated with a plurality of storage servers, the extended attribute request being in view of a conversion of the system call from the map/reduce-based application to an executable routine to be used by the file system; mounting the file system via a mount-point by using the volume identifier; determining a key using the path name; generating, by a processing device, a value of a virtual extended attribute using the key and the mount-point, wherein the value of the virtual extended attribute indicates a physical location of the file at a storage server of the plurality of storage servers in the file system that is identified in view of a hash value associated with the path name; sending a response indicating the physical location of the file at the storage server to the client computer device in view of the hash value associated with the path name, the response comprising a directory name that is associated with the physical location of the file in the file system; creating a job request for the file in view of a closeness of the physical location of the file in the file system from the received response to a physical location of another storage server to operate on the file at the storage server in the file system in view of the job request; and sending the job request to a master storage server to combine results of an operation on the file with additional results associated with an additional job request.
-
-
9. A non-transitory computer-readable storage medium comprising instructions that, when executed by a processing device, cause the processing device to:
-
identify a path name and a volume identifier of a file that is stored in a file system associated with a plurality of storage servers, the file being associated with a system call from a map/reduce-based application; mounting the file system via a mount-point by using the volume identifier; determine an extended attribute request by converting the system call from the map/reduce-based application to an executable routine to be used by the file system; send, by the processing device, the extended attribute request to the mount-point, the extended attribute request comprising the path name to a server computer system to identify a physical location of the file at a storage server of the plurality of storage servers in the file system, wherein the file system comprises a virtual extended attribute that identifies the physical location of the file in view of a hash value associated with the path name in the request; receive a response from the server computer system indicating the physical location of the file at the storage server in the file system in view of the hash value associated with the path name in the request, the received response comprising a directory name that is associated with the physical location of the file in the file system; create a job request for the file in view of a closeness of the physical location of the file in the file system from the received response to a physical location of another storage server to operate on the file at the storage server in the file system in view of the job request; and send the job request to a master storage server to combine results of an operation on the file with additional results associated with an additional job request. - View Dependent Claims (10, 11)
-
-
12. A system comprising:
-
a memory; and a first processing device, operatively coupled to the memory, to; identify a path name and a volume identifier of a file that is stored in a file system associated with a plurality of storage servers, the file being associated with a system call from a map/reduce-based application; mount the file system via a mount-point by using the volume identifier; determine an extended attribute request by converting the system call from the map/reduce-based application to an executable routine to be used by the file system; send the extended attribute request to the mount-point, the extended attribute request comprising the path name to a second processing device to identify a physical location of the file at a storage server of the plurality of storage servers in the file system, wherein the file system comprises a virtual extended attribute that identifies the physical location of the file in view of a hash value associated with the path name in the request; receive a response from the second processing device indicating the physical location of the file at the storage server in the file system in view of the hash value associated with the path name in the request, the received response comprising a directory name that is associated with the physical location of the file in the file system; create a job request for the file in view of a closeness of the physical location of the file in the file system from the received response to a physical location of another storage server to operate on the file at the storage server in the file system in view of the job request; and send the job request to a master storage server to combine results of an operation on the file with additional results associated with an additional job request. - View Dependent Claims (13, 14, 15)
-
Specification