IP Library Granted Patent US 11,354,050
Granted Patent B2
US 11,354,050 · App. 16/924,028 · Granted Jun 7, 2022

Data processing method, apparatus, and computing device

Inventors: Jinxin Liu (Beijing, CN); Chengyu Dong (Beijing, CN); Shanyang Liu (Beijing, CN)
Assignee: Alibaba Group Holding Limited
G06F3/0631G06F3/0604G06F3/0653G06F3/0659G06F3/0673
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 11,354,050
App. No.
16/924,028
Granted
Jun 7, 2022
Kind
B2
Abstract

Data processing method, apparatus, and mobile terminal are provided. A requesting end adds a reserved field to data to be stored to obtain target data, and sends the target data to a storing end. The storing end allocates a memory to cache the target data, generates data metadata of the data to be stored in the target data, and writes the data metadata to a memory location corresponding to the reserved field in the memory. The embodiments of the present disclosure realize zero copying, ensure the efficiency of data storage, and improve the system performance.

Claims (51)

1. A method implemented by a computing device, the method comprising:

adding a reserved field to data to be stored to obtain target data; and

sending the target data to a storing end that includes multiple data storage nodes, sending the target data to the storing end comprising:

determining multiple pieces of request metadata of the multiple data storage nodes separately corresponding to the data to be stored;

calculating a total data size of the target data and the multiple pieces of request metadata; and

allocating a first memory that is consistent with the total data size, wherein the reserved field is used for writing data metadata of the data to be stored in a corresponding memory location in the storing end, so that the data to be stored and the data metadata are written into a storage device as a whole.

2. The method of claim 1 wherein sending the target data to the storing end further comprises:

placing the target data and the multiple pieces of request metadata into the first memory; and

separately sending the target data and a corresponding piece of request metadata to each of the multiple data storage nodes.

3. The method of claim 1 wherein sending the target data to the storing end further comprises:

placing the target data into the first memory, and sequentially placing the multiple pieces of request metadata at an end of the target data; and

sending, for any data storage node of the multiple data storage nodes, the target data, a piece of request metadata corresponding to the any data storage node, and one or more pieces of request metadata located before the piece of request metadata corresponding to the any data storage node in the first memory to the any storage node, the any data storage node being configured to read a corresponding piece of request metadata from the end of received data.

4. The method of claim 3 , wherein sequentially placing the multiple pieces of request metadata at the end of the target data comprises:

sequentially placing respective pieces of request metadata corresponding to the multiple data storage nodes at the end of the target data according to a sending order of the multiple data storage nodes.

5. The method of claim 4 , wherein sending, for the any data storage node of the multiple data storage nodes, the target data, the piece of request metadata corresponding to the any data storage node, and the one or more pieces of request metadata located before the piece of request metadata corresponding to the any data storage node in the first memory to the any storage node comprises:

sending, for the any data storage node, the target data, the piece of request metadata corresponds to the sending order of the any data storage node, and the one or more pieces of request metadata located before the piece of request metadata corresponding to the sending order of the any data storage node from the first memory to the any storage node.

6. The method of claim 1 , wherein adding the reserved field to the data to be stored to obtain the target data comprises:

adding a predetermined character string of a preset size as the reserved field at an end of the data to be stored to obtain the target data.

7. The method of claim 1 , wherein sending the target data to the storing end comprises:

placing the target data into the first memory; and

sending the target data from the first memory to the storing end.

8. One or more computer readable media storing executable instructions that, when executed by one or more processors of a storing end that includes multiple data storage nodes, cause the one or more processors to perform acts comprising:

obtaining target data from a first memory of a requesting end that is consistent with a total data size of the target data and multiple pieces of request metadata of the multiple data storage nodes of the storing end, the target data including a reserved field added by the requesting end to write data, wherein the multiple pieces of request metadata of the multiple data storage nodes separately correspond to the write data;

allocating a second memory to cache the target data;

generating data metadata of the write data; and

writing the data metadata to a memory location corresponding to the reserved field in the second memory.

9. The one or more computer readable media of claim 8 , wherein the reserved field is located at an end of the write data, and generating the data metadata of the write data comprises:

determining the write data based on a preset size of the reserved field; and

generating the data metadata of the write data.

10. The one or more computer readable media of claim 8 , wherein obtaining the target data comprises:

receiving a write request sent by the requesting end, the write request including the target data and at least one piece of the multiple pieces of request metadata; and

determining target request metadata.

11. The one or more computer readable media of claim 10 , wherein generating the data metadata of the write data comprises:

reading the write data based on the target request metadata; and

generating the data metadata based on the target request metadata and the write data.

12. The one or more computer readable media of claim 11 , wherein the write request of the requesting end comprises the target data requested to be sent by the requesting end, the target request metadata, and request metadata that is located before the target request metadata in the first memory.

13. The one or more computer readable media of claim 12 , wherein determining the target request metadata comprises:

reading the target request metadata from an end of the write request based on a data size of the request metadata that is located before the target request metadata in the first memory.

14. An apparatus comprising:

one or more processors;

memory;

a data construction module stored in the memory and executable by the one or more processors to add a reserved field to data to be stored to obtain target data; and

a data sending module stored in the memory and executable by the one or more processors to send the target data to a storing end that includes multiple data storage nodes, determine multiple pieces of request metadata of the multiple data storage nodes separately corresponding to the data to be stored, calculate a total data size of the target data and the multiple pieces of request metadata, and allocate a first memory consistent with the total data size, wherein the reserved field is used for writing data metadata of the data to be stored in a corresponding memory location in the storing end, so that the data to be stored and the data metadata are written into a storage device as a whole.

15. The apparatus of claim 14 , wherein the data construction module is further configured to add a predetermined character string of a preset size as the reserved field at the end of the data to be stored to obtain the target data.

16. The apparatus of claim 14 , wherein the data sending module is further configured to:

place the target data into the first memory; and

send the target data in the first memory to the storing end.

17. The apparatus of claim 14 , wherein the data construction module is further configured to determine the data to be stored according to a data length and/or a data position of the data to be stored in the multiple pieces of request metadata.

18. The apparatus of claim 14 , wherein the data sending module is further configured to:

place the target data and the multiple pieces of request metadata into the first memory; and

separately send the target data and a corresponding piece of request metadata to the multiple data storage nodes.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2026
From: ALIBABA GROUP HOLDING LIMITED
To: CLOUD INTELLIGENCE ASSETS HOLDING (SINGAPORE) PRIVATE LIMITED
Reel/Frame 075478/0225 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 9, 2020
From: LIU, SHANYANG; DONG, CHENGYU; LIU, JINXIN
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 054019/0551 →
Priority Claims (1)
CN 201810020121.0 · Jan 9, 2018 · national
Continuity (2)
Continuation PCTCN2019070580 · Jan 7, 2019
Related Publication 20200341661A1 · Oct 29, 2020