US 12,366,990 B2
Data storage method to shorten a data access path
Yi He, Chengdu (CN); Siwei Luo, Chengdu (CN); Tao Cheng, Shenzhen (CN); and Li Li, Shenzhen (CN)
Assigned to HUAWEI TECHNOLOGIES CO., LTD., Shenzhen (CN)
Filed by Huawei Technologies Co., Ltd., Shenzhen (CN)
Filed on Oct. 18, 2021, as Appl. No. 17/503,876.
Application 17/503,876 is a continuation of application No. PCT/CN2020/114346, filed on Sep. 10, 2020.
Claims priority of application No. 201910883665.4 (CN), filed on Sep. 18, 2019; and application No. 201911302007.8 (CN), filed on Dec. 17, 2019.
Prior Publication US 2022/0035560 A1, Feb. 3, 2022
Int. Cl. G06F 3/06 (2006.01)
CPC G06F 3/0655 (2013.01) [G06F 3/0604 (2013.01); G06F 3/067 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A storage system, comprising:
a client configured to:
send a data write request comprising data related to an application; and
send a first write instruction comprising a log of the data and a first access address of a first storage object allocated to the log, wherein the first access address of the first storage object comprises a first identifier of the first storage object and a first offset of the first storage object;
a computing node coupled to the client and comprising a memory, wherein the computing node is configured to:
pre-allocate the first storage object to the client;
send the first access address of the first storage object to the client;
receive, from the client, the data write request;
write the data into the memory; and
send, to the client, a first response message after writing the data into the memory; and
a storage node coupled to the computing node and the client and comprising a hard disk, wherein the storage node is configured to:
receive, from the client, the first write instruction; and
forward the log and the first access address to the hard disk,
wherein the hard disk comprises an object semantic interface and is configured to write, based on the first access address, the log into a first storage space corresponding to the first storage object without performing address translation,
wherein the computing node is further configured to write at least a part of the data in the memory when a total amount of the data in the memory reaches a threshold,
wherein the storage node is further configured to send, to the client and in response to the log being written onto the hard disk, a second response message to the client,
wherein the client is further configured to:
receive the first response message and the second response message; and
feed back, to the application in response to receiving the first response message and the second response message, an indication that the data has been stored successfully,
wherein the computing node is further configured to:
allocate a second storage object to the data; and
send, to the storage node, a second write instruction comprising the data and a second access address of the second storage object, wherein the second access address comprises a second identifier of the second storage object and a second offset of the second storage object,
wherein the storage node is further configured to:
receive the second write instruction; and
forward the data and the second access address to the hard disk,
wherein the hard disk is further configured to write, based on the second access address, the data into a second storage space corresponding to the second storage object, and
wherein the storage node is further configured to delete the log from the first storage space in response to the hard disk writing the data into the second storage space.