IP Library › Granted Patent US 9,646,091
Granted Patent B2
US 9,646,091 · App. 14/188,429 · Granted May 9, 2017

File joining on back end device

Inventors: Vineet Chadha (San Jose, CA); Guangyu Shi (Cupertino, CA)
Assignee: Futurewei Technologies, Inc.
G06F17/30864G06F17/30115G06F17/30194G06F17/30498
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 9,646,091
App. No.
14/188,429
Granted
May 9, 2017
Kind
B2
Abstract

A device comprises a receiver configured to receive a join-lookup remote procedural call (RPC) for a file, wherein the join-lookup RPC requests a join operation of sub-files associated with the file, and a transmitter configured to transmit the file in response to the Join-Lookup RPC. A distributed file system (DFS) client comprises a transmitter configured to transmit a join-lookup RPC for a file, wherein the join-lookup RPC requests a join operation of sub-files associated with the file, and a receiver configured to receive the file in response to the Join-Lookup RPC. A method comprises receiving a join-lookup RPC for a file, wherein the join-lookup RPC requests a join operation of sub-files associated with the file, and transmitting the file in response to the Join-Lookup RPC.

Claims (46)

1. A device comprising:

a receiver configured to receive a join-lookup remote procedural call (RPC) for a file, wherein the join-lookup RPC requests a join operation of sub-files associated with the file, wherein the join-lookup RPC comprises arguments, wherein the arguments comprise a first parameter referring to a number of files to look up and join, a second parameter referring to a type of join operation to perform, a third parameter referring to names of the files to look up and join, and a fourth parameter referring to offset or other related information, wherein the join-lookup RPC is associated with a modified file open layer operation, a virtual file system (VFS) join-lookup layer operation, and a Network File System (NFS) join-lookup layer operation, wherein the VFS join-lookup layer operation is at a lower layer than the modified file open layer operation, and wherein the NFS join-lookup layer operation is at a lower layer than the VFS join-lookup layer operation;

a transmitter configured to transmit the file in response to the Join-Lookup RPC;

a memory;

a sandbox associated with a portion of the memory and configured to:

retrieve the sub-files from system disks,

load the sub-files, and

perform the join operation, wherein the device is a distributed file system (DFS) network-attached storage (NAS) server configured to implement an NFS protocol; and

a hypervisor configured to create and run the sandbox.

2. The device of claim 1 , further comprising a system disk array, wherein the system disk array comprises the system disks, wherein the system disks comprise the sub-files.

3. The device of claim 1 , wherein the sandbox is 75 kilobytes (kB) or less.

4. The device of claim 1 , wherein the join-lookup RPC is in the form of Join-Lookup (pfh, arg), wherein pfh refers to a parent file handle, and wherein arg refers to the arguments.

5. The device of claim 1 , wherein the arguments are in the following form:

Struct join_arg {

 Int no_of_files;

 String join_op_info;

 String fnam(no_of_files);

 Int condition;

}.

6. The device of claim 1 , wherein the file is a text file.

7. The device of claim 1 , wherein the file comprises a user's statistical data.

8. A distributed file system (DFS) client comprising:

a memory;

a processor coupled to the memory;

a transmitter configured to transmit a join-lookup remote procedural call (RPC) for a file, wherein the join-lookup RPC requests a join operation of sub-files associated with the file, wherein the join-lookup RPC is associated with a modified file open layer operation, a virtual file system (VFS) join-lookup layer operation, and a Network File System (NFS) join-lookup layer operation, wherein the VFS join-lookup layer operation is at a lower layer than the modified file open layer operation, and wherein the NFS join-lookup layer operation is at a lower layer than the VFS join-lookup layer operation;

an application programming interface (API) associated with an application, wherein the API comprises semantics for the join-lookup RPC; and

a receiver configured to receive, from a distributed file system (DFS) network-attached storage (NAS) server configured to implement an NFS protocol, the file in response to the Join-Lookup RPC,

wherein the join-lookup RPC comprises arguments, and

wherein the arguments comprise a first parameter referring to a number of files to look up and join, a second parameter referring to a type of join operation to perform, a third parameter referring to names of the files to look up and join, and a fourth parameter referring to offset or other related information.

9. The DFS client of claim 8 , wherein the application is stored on the memory, executed by the processor, and configured to implement the NFS protocol.

10. A method comprising:

receiving a join-lookup remote procedural call (RPC) for a file, wherein the join-lookup RPC requests a join operation of sub-files associated with the file, wherein the join-lookup RPC comprises arguments, wherein the arguments comprise a first parameter referring to a number of files to look up and join, a second parameter referring to a type of join operation to perform, a third parameter referring to names of the files to look up and join, and a fourth parameter referring to offset or other related information, wherein the join-lookup RPC is associated with a modified file open layer operation, a virtual file system (VFS) join-lookup layer operation, and a Network File System (NFS) join-lookup layer operation, wherein the VFS join-lookup layer operation is at a lower layer than the modified file open layer operation, and wherein the NFS join-lookup layer operation is at a lower layer than the VFS join-lookup layer operation;

transmitting, by a distributed file system (DFS) network-attached storage (NAS) server configured to implement an NFS protocol, the file in response to the Join-Lookup RPC;

creating and running a sandbox by a hypervisor;

retrieving the sub-files by the sandbox and from system disks;

loading the sub-files into the sandbox; and

performing the join operation in the sandbox.

11. The method of claim 10 , wherein the sandbox is 75 kilobytes (kB) or less.

12. The method of claim 10 , wherein the join-lookup RPC is in the form of Join-Lookup (pfh, arg), wherein pfh refers to a parent file handle, and wherein arg refers to the arguments.

13. The method of claim 10 , wherein the arguments are in the following form:

Struct join_arg {

 Int no_of_files;

 String join_op_info;

 String fnam(no_of_files);

 Int condition;

}.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 25, 2014
From: CHADHA, VINEET; SHI, GUANGYU
To: FUTUREWEI TECHNOLOGIES, INC.
Reel/Frame 032291/0292 →
Continuity (1)
Related Publication 20150242502A1 · Aug 27, 2015