File processing method, system and server-clustered system for cloud storage
First Claim
1. One or more computer-readable media storing computer-executable instructions that, when executed by one or more processors associated with a server, instruct the one or more processors to perform acts comprising:
- receiving an upload request to upload a file from a user device, the upload request including at least a user identifier (ID), a file name, and location information of the file in the user device;
generating a file ID for the file using sequentially increased numbers and the location information of the file in the user device that is included in the upload request;
transmitting the file ID to the user device;
receiving a duplicate determination request including the file ID and multiple slice IDs from the user device, wherein each slice ID of the multiple slice IDs is generated and associated with a respective slice file of multiple slice files, and the multiple slice files are generated by dividing the file;
determining whether one or more duplicate slice IDs exist in the multiple slice IDs that individually correspond to the multiple slice files associated with the file in response to receiving the duplicate determination request from the user device;
sending respective one or more slice IDs of one or more non-duplicate slice files associated with the file to the user device after the determining; and
receiving a slice file package including at least the file ID and the one or more non-duplicate slice files from the user device.
1 Assignment
0 Petitions
Accused Products
Abstract
A server receives a request to upload a file form a user device. The server may generate a unique file ID associated with the file based on the request, and transmit the file ID to the user device. The user device may divide the file to generate multiple slice files and their corresponding slice IDs. From the user device, the server receives the multiple slice files and the slice IDs. Based on the slice IDs, the server may determine storage addresses at which to store the multiple slice files in a distributed storage system using a consistent hash algorithm. The multiple slice files may be stored based on the corresponding storage addresses of the distrusted storage system.
-
Citations
20 Claims
-
1. One or more computer-readable media storing computer-executable instructions that, when executed by one or more processors associated with a server, instruct the one or more processors to perform acts comprising:
-
receiving an upload request to upload a file from a user device, the upload request including at least a user identifier (ID), a file name, and location information of the file in the user device; generating a file ID for the file using sequentially increased numbers and the location information of the file in the user device that is included in the upload request; transmitting the file ID to the user device; receiving a duplicate determination request including the file ID and multiple slice IDs from the user device, wherein each slice ID of the multiple slice IDs is generated and associated with a respective slice file of multiple slice files, and the multiple slice files are generated by dividing the file; determining whether one or more duplicate slice IDs exist in the multiple slice IDs that individually correspond to the multiple slice files associated with the file in response to receiving the duplicate determination request from the user device; sending respective one or more slice IDs of one or more non-duplicate slice files associated with the file to the user device after the determining; and receiving a slice file package including at least the file ID and the one or more non-duplicate slice files from the user device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer-implemented method comprising:
-
receiving a request to upload a file from a user device, the request including at least a user identifier (ID), a file name, and location information of the file in the user device; generating a file ID for the file using sequentially increased numbers and the location information of the file in the user device that is included in the request; transmitting the file ID to the user device; receiving a duplicate determination request including the file ID and multiple slice IDs from the user device, wherein each slice ID of the multiple slice IDs is generated and associated with a respective slice file of multiple slice files, and the multiple slice files are generated by dividing the file; determining whether one or more duplicate slice IDs exist in the multiple slice IDs that individually correspond to the multiple slice files associated with the file in response to receiving the duplication determination request from the user device; sending respective one or more slice IDs of one or more non-duplicate slice files associated with the file to the user device after the determining; and receiving a slice file package including at least the file ID and the one or more non-duplicate slice files from the user device. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A user device comprising:
-
one or more processors; memory storing executable instructions that, when executed by the one or more processors, to cause the one or more processors to perform acts comprising; transmitting a upload request to upload a file to a server, the upload request including at least a user identifier (ID), a file name, and location information of the file in the user device; receiving a file ID associated with the file from the server, the file ID being generated based at least in part on sequentially increased numbers and the location information of the file in the user device included in the upload request; dividing the file into multiple slice files; generating multiple slice IDs and associating each of the multiple slice IDs with a respective slice file of the multiple slice files; transmitting a duplicate determination request including the file ID and the multiple slice IDs to the server; receiving duplication information including respective one or more slice IDs of one or more non-duplicate slice files associated with the file, wherein one or more of the multiple slice IDs are determined to be duplicate slice IDs that correspond to duplicate slice files of the multiple slice files; and transmitting a slice file data packet including at least the file ID and the one or more non-duplicate slice files of the multiple slice files. - View Dependent Claims (18, 19, 20)
-
Specification