IP Library Granted Patent US 10,860,728
Granted Patent B2
US 10,860,728 · App. 16/721,245 · Granted Dec 8, 2020

Data storage nodes collaboration and data processing for data statistical analysis

Inventor: Wenzhen Lin (Hangzhou, CN)
Assignee: Advanced New Technologies Co., Ltd.
G06F21/602G06F3/067G06F3/0623G06F3/0659G06F21/6245H04L9/085H04L9/0894H04L2209/46
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 10,860,728
App. No.
16/721,245
Granted
Dec 8, 2020
Kind
B2
Abstract

Data storage nodes that participate in a requested data statistical analysis as participant data storage nodes are determined and divided into a plurality of node sets. Data stored in each participant data storage node associated with a particular node set is encrypted, where the encrypted data is divided into a number of fragments at least equal to a number of participant data storage nodes associated with the particular node set. Each participant data storage node sends a portion of the encrypted data to each of the other participant data storage nodes within the particular node set. Each participant data storage node processes received encrypted data and data remaining on the particular participant data storage node to obtain a processing result. Each participant data storage node sends the processing result to a proxy node, wherein the proxy node performs data statistical analysis based on the processing result.

Claims (56)

1. A computer-implemented method, comprising:

receiving, by a plurality of data storage nodes, a request for performing a data statistical analysis;

determining, from the plurality of data storage nodes, data storage nodes that participate in the data statistical analysis as participant data storage nodes;

dividing the participant data storage nodes into a plurality of node sets;

encrypting, at each participant data storage node associated with a particular node set, data stored in the participant data storage node corresponding to the request to generate encrypted data, wherein the encrypted data is divided into a number of fragments at least equal to a number of participant data storage nodes associated with the particular node set;

sending, by each participant data storage node, fewer than k portions of the encrypted data to other participant data storage nodes within the particular node set, wherein k is a threshold that indicates a minimum number of portions of the encrypted data for restoring the data;

performing statistics collection, at each participant data storage node, based on encrypted data received from other participant data storage nodes and remaining on the particular participant data storage node to obtain a sum; and

sending, from each participant data storage node, the sum to a proxy node to perform data statistical analysis to obtain a statistics collection result.

2. The computer-implemented method of claim 1 , wherein a number of the node sets is at least 3, and wherein a number of participant data storage nodes comprising each node set is within a range of 3 to 5.

3. The computer-implemented method of claim 1 , wherein the data storage nodes that participate in the data statistical analysis are nodes that reply with a responding message to a participating request.

4. The computer-implemented method of claim 1 , further comprising:

prior to receiving the request for performing a data analysis, dividing the plurality of data storage nodes into multiple executive regions based on a predetermined division method at the completion of a specific time period; or

each time when a request for performing a data analysis is received, dividing the plurality of data storage nodes into multiple executive regions based on a predetermined division method.

5. The computer-implemented method of claim 4 , wherein the plurality of data storage nodes are divided into multiple executive regions randomly or based on geographical locations associated with the data storage nodes.

6. The computer-implemented method of claim 1 , wherein encrypting data stored comprises:

for each participant data storage node, determining data corresponding to identification information included in the request; and

encrypting the data by using a secret sharing (SS) algorithm to obtain encrypted data.

7. The computer-implemented method of claim 1 , wherein processing the encrypted data comprises adding the encrypted data received from other data storage nodes and remaining on that particular data storage node together to generate a sum result.

8. A non-transitory, computer-readable medium storing one or more instructions executable by a computer system to perform operations comprising:

receiving, by a plurality of data storage nodes, a request for performing a data statistical analysis;

determining, from the plurality of data storage nodes, data storage nodes that participate in the data statistical analysis as participant data storage nodes;

dividing the participant data storage nodes into a plurality of node sets;

encrypting, at each participant data storage node associated with a particular node set, data stored in the participant data storage node corresponding to the request to generate encrypted data, wherein the encrypted data is divided into a number of fragments at least equal to a number of participant data storage nodes associated with the particular node set;

sending, by each participant data storage node, fewer than k portions of the encrypted data to other participant data storage nodes within the particular node set, wherein k is a threshold that indicates a minimum number of portions of the encrypted data for restoring the data;

performing statistics collection, at each participant data storage node, based on encrypted data received from other participant data storage nodes and remaining on the particular participant data storage node to obtain a sum; and

sending, from each participant data storage node, the sum to a proxy node to perform data statistical analysis to obtain a statistics collection result.

9. The non-transitory, computer-readable medium of claim 8 , wherein a number of the node sets is at least 3, and wherein a number of participant data storage nodes comprising each node set is within a range of 3 to 5.

10. The non-transitory, computer-readable medium of claim 8 , wherein the data storage nodes that participate in the data statistical analysis are nodes that reply with a responding message to a participating request.

11. The non-transitory, computer-readable medium of claim 8 , further comprising one or more instructions to:

prior to receiving the request for performing a data analysis, divide the plurality of data storage nodes into multiple executive regions based on a predetermined division method at the completion of a specific time period; or

each time when a request for performing a data analysis is received, divide the plurality of data storage nodes into multiple executive regions based on a predetermined division method.

12. The non-transitory, computer-readable medium of claim 11 , wherein the plurality of data storage nodes are divided into multiple executive regions randomly or based on geographical locations associated with the data storage nodes.

13. The non-transitory, computer-readable medium of claim 8 , wherein encrypting data stored comprises one or more instructions to:

for each participant data storage node, determine data corresponding to identification information included in the request; and

encrypt the data by using a secret sharing (SS) algorithm to obtain encrypted data.

14. The non-transitory, computer-readable medium of claim 8 , wherein processing the encrypted data comprises one or more instructions to add the encrypted data received from other data storage nodes and remaining on that particular data storage node together to generate a sum result.

15. A computer-implemented system, comprising:

one or more computers; and

one or more computer memory devices interoperably coupled with the one or more computers and having tangible, non-transitory, machine-readable media storing one or more instructions that, when executed by the one or more computers, perform one or more operations comprising:

receiving, by a plurality of data storage nodes, a request for performing a data statistical analysis;

determining, from the plurality of data storage nodes, data storage nodes that participate in the data statistical analysis as participant data storage nodes;

dividing the participant data storage nodes into a plurality of node sets;

encrypting, at each participant data storage node associated with a particular node set, data stored in the participant data storage node corresponding to the request to generate encrypted data, wherein the encrypted data is divided into a number of fragments at least equal to a number of participant data storage nodes associated with the particular node set;

sending, by each participant data storage node, fewer than k portions of the encrypted data to other participant data storage nodes within the particular node set, wherein k is a threshold that indicates a minimum number of portions of the encrypted data for restoring the data;

performing statistics collection, at each participant data storage node, based on encrypted data received from other participant data storage nodes and remaining on the particular participant data storage node to obtain a sum; and

sending, from each participant data storage node, the sum to a proxy node to perform data statistical analysis to obtain a statistics collection result.

16. The computer-implemented system of claim 15 , wherein a number of the node sets is at least 3, and wherein a number of participant data storage nodes comprising each node set is within a range of 3 to 5.

17. The computer-implemented system of claim 15 , wherein the data storage nodes that participate in the data statistical analysis are nodes that reply with a responding message to a participating request determined.

18. The computer-implemented system of claim 15 , further comprising one or more operations to:

prior to receiving the request for performing a data analysis, divide the plurality of data storage nodes into multiple executive regions based on a predetermined division method at the completion of a specific time period; or

each time when a request for performing a data analysis is received, divide the plurality of data storage nodes into multiple executive regions based on a predetermined division method; and

wherein the plurality of data storage nodes are divided into multiple executive regions randomly or based on geographical locations associated with the data storage nodes.

19. The computer-implemented system of claim 15 , wherein encrypting data stored comprises one or more operations to:

for each participant data storage node, determine data corresponding to identification information included in the request; and

encrypt the data by using a secret sharing (SS) algorithm to obtain encrypted data.

20. The computer-implemented system of claim 15 , wherein processing the encrypted data comprises one or more operations to add the encrypted data received from other data storage nodes and remaining on that particular data storage node together to generate a sum result.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2020
From: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
To: ADVANCED NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053754/0625 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2020
From: ALIBABA GROUP HOLDING LIMITED
To: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053743/0464 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2020
From: LIN, WENZHEN
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 051711/0197 →