Data Write Method, Apparatus, and System
AssigneeHuawei Technologies Co., Ltd.
InventorsLei Chen, Keji Huang
Life of this patent
Estimating the term…
Abstract
In an active-active system, if write lock permission is granted to a second storage array, a first storage array sends to-be-written data and a lock revocation request together to a lock server; the lock server sends a lock revocation request carrying the to-be-written data to the second storage array; after storing the to-be-written data, the second storage array sends a lock revocation success message to the lock server; the lock server gives the write lock permission to the first storage array; and the first storage array obtains the write lock permission and stores the to-be-written data.
Claims13
A method, comprising:
- receiving, by a lock server, a locking request from a first storage system, wherein the locking request comprises a locking command, first target data, and a first write address, and the first write address identifies a location for storing the first target data in the first storage system and a second storage system;
- in response to determining that write lock permission for the first write address is currently granted to the second storage system, sending, by the lock server, a lock revocation request to the second storage system, wherein the lock revocation request indicates the write lock permission currently granted to the second storage system is being withdrawn, the lock revocation request comprises the first target data and the first write address, and the lock revocation request instructs the second storage system to store the first target data according to the first write address;
- receiving, by the lock server, a lock revocation success message from the second storage system, wherein the lock revocation success message indicates that the second storage system has completed writing the first target data in the second storage system;
- and
- sending, by the lock server, a lock allocation message to the first storage system, wherein the lock allocation message allocates the write lock permission to the first storage system.
A data storage system, comprising:
- a lock server;
- a first storage system;
- and
- a second storage system;
- wherein the first storage system is configured to:
- receive a data write request, wherein the data write request comprises first target data and a first write address, and the first write address identifies a location for storing the first target data in the first storage system and the second storage system;
- and
- send a locking request to the lock server, wherein the locking request comprises a locking command, the first target data, and the first write address;
- wherein the lock server is configured to:
- receive the locking request;
- and
- in response to determining write lock permission for the first write address is currently granted to the second storage system, send a lock revocation request to the second storage system, wherein the lock revocation request indicates comprises the first target data and the first write address;
- wherein the second storage system is configured to:
- receive the lock revocation request;
- store the first target data according to the first write address;
- and
- send a lock revocation success message to the lock server, wherein the lock revocation success message indicates that the first target data has been successfully written in the second storage system;
- wherein the lock server is further configured to:
- receive the lock revocation success message;
- and
- send a lock allocation message to the first storage system, wherein the lock allocation message allocates the write lock permission to the first storage system;
- and
- wherein the first storage system is further configured to store the first target data according to the first write address after receiving the lock allocation message.
A lock server, comprising:
- a processor;
- and
- an interface, wherein the interface coupled to the processor;
- wherein the processor is configured to:
- receive a locking request from a first storage system, wherein the locking request comprises a locking command, first target data, and a first write address, and the first write address identifies a location for storing the first target data in the first storage system and a second storage system;
- in response to determining that write lock permission for the first write address is currently granted to the second storage system, send a lock revocation request to the second storage system, wherein the lock revocation request indicates the write lock permission granted to the second storage system is being withdrawn, the lock revocation request comprises the first target data and the first write address, and the lock revocation request instructs the second storage system to store the first target data according to the first write address;
- receive a lock revocation success message from the second storage system, wherein the lock revocation success message indicates that the second storage system has completed writing the first target data in the second storage system;
- and
- send a lock allocation message to the first storage system, wherein the lock allocation message allocates the write lock permission to the first storage system.
A method, comprising:
- receiving, by a first storage system, a data write request, wherein the data write request comprises first target data and a first write address, and the first write address identifies a location for storing the first target data in the first storage system and a second storage system;
- sending, by the first storage system, a locking request to a lock server, wherein the locking request comprises a locking command, the first target data, and the first write address;
- receiving, by the lock server, the locking request;
- in response to determining that write lock permission for the first write address is currently granted to the second storage system, sending, by the lock server, a lock revocation request to the second storage system, wherein the lock revocation request comprises the first target data and the first write address;
- storing, by the second storage system, the first target data according to the first write address;
- sending, by the second storage system, a lock revocation success message to the lock server, wherein the lock revocation success message indicates that the first target data has been successfully written in the second storage system;
- receiving, by the lock server, the lock revocation success message;
- sending, by the lock server, a lock allocation message to the first storage system, wherein the lock allocation message allocates the write lock permission to the first storage system;
- and
- storing, by the first storage system, the first target data according to the first write address after receiving the lock allocation message.
Dependencies are inferred from the claim text.