Object deletion method, electronic equipment and computer readable medium

By submitting asynchronous object deletion tasks in the metadata server of the object storage system and ensuring that metadata is deleted simultaneously after accurate submission, the problem of time, low flexibility and inconsistency in the object storage system is solved, and the system performance and User experience.

CN119493773APending Publication Date: 2025-02-21YICI NETCOM (HANGZHOU) TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411557796.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-04
Publication Date
2025-02-21

AI Technical Summary

Technical Problem

The method of deleting objects in the object storage system has problems such as long time, low flexibility, high system implementation complexity, and high data inconsistency.

Method used

In the metadata server of the object storage system, the object unique identification submitted by the client is used to delete the object asynchronously, ensuring that the metadata is deleted synchronously after the task is submitted accurately, and the asynchronous deletion task is handled according to the object unique identification in the shard file.

Benefits of technology

It avoids the situation where the entity file is not deleted successfully after the metadata is successfully deleted, prevents the entity file of other objects by mistake, reduces the risk of data inconsistency, and improves the data storage experience and system performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119493773A_ABST
    Figure CN119493773A_ABST
Patent Text Reader

Abstract

The invention discloses an object deletion method, electronic equipment and a computer readable medium, which are used for a metadata server in an object storage system to submit an object asynchronous deletion task according to an object unique identifier carried in an object deletion request sent by a client, and when it is determined that the object asynchronous deletion task is accurately submitted, the object asynchronous deletion task is deleted. And synchronously deleting metadata of a to-be-deleted object according to an object unique identifier carried in the object deletion request, and processing the object asynchronous deletion task according to the object unique identifier carried in a fragment file corresponding to the to-be-deleted object. According to the method, the situation that the metadata is successfully deleted but the entity file is not successfully deleted and the situation that the entity files of other objects except the object to be deleted are deleted by mistake can be avoided, and the task of deleting the metadata and the task of deleting the fragment file can be decoupled, so that the integrity of the data and the security of the system are guaranteed; the flexibility of the system is improved, and the implementation complexity of the system is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of storage technology, and in particular, to an object deletion method, an electronic device, and a computer-readable medium. Background Art

[0002] Object storage system is an efficient storage architecture for managing and storing unstructured data, involving the following three core components:

[0003] 1. Unique identification: In an object storage system, each object has a globally unique identifier (ObjectID), which is a unique string or number used to uniquely locate and access the object. The unique identification allows objects to be directly accessed and managed in the system without relying on traditional file paths or directory structures, which improves the flexibility and scalability of the system;

[0004] 2. Metadata: Metadata is descriptive information about an object, used to record and manage the attributes and status of an object, including basic information (such as the object's creation time, modification time, size, file type and other basic attributes), permission control (object access rights and security policies, defining who can read, write or delete an object), storage location (indicating the physical storage location of the object's data in the system, including storage node or shard information, etc.), and custom tags (users add custom tags to objects to support data classification, tagging and search to meet specific application requirements);

[0005] 3. Entity files: Entity files are the actual data part of the object storage system, including stored unstructured data, which can be documents, images, videos, backup files, etc. It is the actual data content uploaded by the user. In order to improve the performance, scalability and reliability of the storage system, the object storage system usually divides the entity file into multiple shards and stores them on different storage nodes.

[0006] Currently, the method of deleting objects in object storage systems has many disadvantages, such as long time consumption, low flexibility, high complexity of system implementation, and high risk of data inconsistency. Summary of the invention

[0007] The present application aims to solve one of the technical problems in the related art to a certain extent. To this end, the present application provides an object deletion method, an electronic device and a computer readable medium.

[0008] As a first aspect of the present application, a method for deleting an object is provided, which is used in a metadata server in an object storage system, wherein the method comprises:

[0009] Submit an object asynchronous deletion task based on the object unique identifier carried in the object deletion request sent by the client;

[0010] When it is determined that the object asynchronous deletion task is accurately submitted, the metadata of the object to be deleted is synchronously deleted according to the object unique identifier carried in the object deletion request;

[0011] According to the object unique identifier carried in the fragment file corresponding to the object to be deleted, the object asynchronous deletion task is processed.

[0012] Optionally, the determining that the object asynchronous deletion task is accurately submitted includes:

[0013] It is determined that the object unique identifier indicated after the object asynchronous deletion task is submitted is consistent with the object unique identifier carried in the object deletion request.

[0014] Optionally, processing the object asynchronous deletion task according to the object unique identifier carried in the shard file corresponding to the object to be deleted includes:

[0015] Start the asynchronous deletion task of the object;

[0016] Read the first shard file to be deleted corresponding to the object to be deleted;

[0017] Read the object unique identifier from the first shard file to be deleted;

[0018] When it is determined that the security check has passed according to the read unique identifier of the object, the to-be-deleted fragment files corresponding to the to-be-deleted object are deleted from the corresponding storage device respectively;

[0019] When it is determined that the security check fails according to the read unique identifier of the object, the asynchronous deletion task of the object is abandoned.

[0020] Optionally, determining whether the security check passes according to the read unique identifier of the object includes:

[0021] Determining whether there is metadata including the read unique identifier of the object;

[0022] If it is determined that there is no metadata including the read unique identifier of the object, it is determined that the security check has passed; otherwise, it is determined that the security check has failed.

[0023] Optionally, the object asynchronous deletion task carries the storage path of each to-be-deleted shard file corresponding to the to-be-deleted object, and the reading of the first to-be-deleted shard file corresponding to the to-be-deleted object includes:

[0024] Get the storage path of the first shard file to be deleted corresponding to the object to be deleted;

[0025] According to the storage path of the first shard file to be deleted, the first shard file to be deleted corresponding to the object to be deleted is read from the corresponding storage device.

[0026] Optionally, submitting the object asynchronous deletion task according to the object unique identifier carried in the object deletion request sent by the client includes:

[0027] According to the object unique identifier carried in the object deletion request, query and obtain metadata of the object to be deleted;

[0028] Submit an object asynchronous deletion task according to the metadata of the object to be deleted.

[0029] Optionally, when it is determined that the object asynchronous deletion task is accurately submitted, the metadata of the object to be deleted is synchronously deleted according to the object unique identifier carried in the object deletion request, including:

[0030] When it is determined that the object asynchronous deletion task is submitted accurately, metadata including the object unique identifier carried in the object deletion request are synchronously deleted.

[0031] Optionally, the method further comprises:

[0032] When it is determined that the object asynchronous deletion task is not submitted accurately, a deletion failure notification message carrying the object unique identifier carried in the object deletion request is sent to the client.

[0033] As a second aspect of the present application, an electronic device is provided, wherein the electronic device includes:

[0034] one or more processors;

[0035] A memory having one or more computer programs stored thereon, when the one or more computer programs are executed by the one or more processors, the one or more processors implement the object deletion method described in the first aspect of the present application.

[0036] As a third aspect of the present application, a computer-readable medium is provided, on which a computer program is stored, wherein when the computer program is executed by a processor, the object deletion method described in the first aspect of the present application is implemented.

[0037] In the object deletion method provided in the embodiment of the present application, the metadata server in the object storage system submits an asynchronous object deletion task according to the object unique identifier carried in the object deletion request sent by the client. When it is determined that the asynchronous object deletion task is accurately submitted, the metadata of the object to be deleted is synchronously deleted according to the object unique identifier carried in the object deletion request, and the asynchronous object deletion task is processed according to the object unique identifier carried in the shard file corresponding to the object to be deleted. This can avoid the situation where the metadata is successfully deleted but the physical file is not successfully deleted due to reasons such as the object deletion task failing to be accurately submitted, and the physical files of other objects other than the object to be deleted are mistakenly deleted, thereby avoiding the risk of data inconsistency, ensuring data integrity and system security, and improving the user's data storage experience. It can also decouple the task of deleting metadata from the task of deleting shard files, thereby improving the object deletion speed, avoiding user operation blocking, improving the flexibility of the system, and reducing the complexity of system implementation, thereby improving system performance and concurrent processing capabilities. BRIEF DESCRIPTION OF THE DRAWINGS

[0038] The present application is further described below in conjunction with the accompanying drawings:

[0039] Figure 1 It is a flowchart of an implementation method of the object deletion method provided in the embodiment of the present application;

[0040] Figure 2 This is a flowchart of an implementation method of processing an asynchronous deletion task of an object provided in an embodiment of the present application;

[0041] Figure 3 This is a flowchart of an implementation method of determining whether a security check has passed according to a read unique identifier of an object provided in an embodiment of the present application;

[0042] Figure 4 This is a flowchart of an implementation method of reading the first shard file to be deleted corresponding to the object to be deleted provided in an embodiment of the present application;

[0043] Figure 5 This is a flowchart of an implementation method of submitting an asynchronous deletion task of an object provided in an embodiment of the present application;

[0044] Figure 6 is a flowchart of another implementation of the object deletion method provided in an embodiment of the present application;

[0045] Figure 7 It is a logic signaling diagram of another implementation method of the object deletion method provided in the embodiment of the present application;

[0046] Figure 8It is a module diagram of an implementation of an electronic device provided in an embodiment of the present application;

[0047] Fig. 9 It is a schematic diagram of a computer-readable medium provided in an embodiment of the present application.

[0048] Description of Reference Numerals

[0049] 101: Processor 102: Memory

[0050] 103: I / O interface 104: bus DETAILED DESCRIPTION

[0051] The embodiments of the present application are described in detail below, and examples of the embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements with the same or similar functions. The embodiments based on the embodiments are intended to be used to explain the present application and cannot be understood as limiting the present application.

[0052] References to "one embodiment" or "an example" or "an example" in this specification mean that a particular feature, structure, or characteristic described in conjunction with the embodiment itself may be included in at least one embodiment disclosed in the present application. The appearance of the phrase "in one embodiment" in various places in the specification does not necessarily refer to the same embodiment.

[0053] Currently, there are three main ways to delete objects in object storage systems:

[0054] 1. Synchronous deletion of metadata and physical files: Since the deletion operation is performed synchronously, when deleting large files or a large number of shard files, the entire deletion process takes a long time, resulting in blocked user requests, extended system response time, etc.;

[0055] 2. Delete metadata first, then asynchronously delete the physical file. This method must ensure that both "delete metadata" and "submit asynchronous deletion task for physical file" are executed correctly, because any failure or error in either operation may cause data inconsistency: if metadata is successfully deleted but the asynchronous deletion task is not successfully submitted, the physical file will remain in the object storage system, resulting in a waste of storage space; if metadata is not successfully deleted but the physical file has been deleted, "empty objects" will exist, affecting system integrity; since deleting metadata and deleting physical files are independent of each other, if the asynchronous deletion task for the physical file is not submitted accurately, it will lead to accidental deletion. For example, a user requests to delete file A but mistakenly submits the asynchronous deletion task for file B;

[0056] 3. Mark the metadata as "deleted" first, and then asynchronously delete the metadata and physical files: In this way, the deletion of metadata and the deletion of physical files are usually performed in one asynchronous task, which also means that the operation of deleting metadata and the operation of deleting physical files are coupled and inseparable, resulting in low flexibility and high complexity of system implementation.

[0057] In view of this, the applicant of this application proposes that, when processing an object deletion request, the object asynchronous deletion task is first submitted, and after ensuring that the object asynchronous deletion task is accurately submitted, the metadata is deleted, and finally the object asynchronous deletion task is executed based on the object unique identifier embedded in the shard file. This can decouple the operation of deleting metadata and the operation of deleting entity files and avoid data inconsistency.

[0058] As a first aspect of an embodiment of the present application, a method for deleting an object is provided, which is used in a metadata server in an object storage system, such as Figure 1 As shown, the method may include the following steps:

[0059] In step S110, an object asynchronous deletion task is submitted according to the object unique identifier carried in the object deletion request sent by the client;

[0060] In step S120, when it is determined that the object asynchronous deletion task is accurately submitted, the metadata of the object to be deleted is synchronously deleted according to the object unique identifier carried in the object deletion request;

[0061] In step S130, the object asynchronous deletion task is processed according to the object unique identifier carried in the fragment file corresponding to the object to be deleted.

[0062] Among them, the object storage system can be composed of objects, metadata servers, storage devices (also called storage nodes, etc.), clients, etc. The object deletion method provided in the embodiment of the present application is executed by the metadata server therein.

[0063] The object unique identifier refers to the globally unique identifier (ObjectID) of the object in the object storage system, and the metadata refers to the descriptive information used to describe and manage the properties and status of the object in the object storage system.

[0064] The difference between asynchronous deletion and synchronous deletion is that asynchronous deletion of data is executed in an asynchronous thread, while synchronous deletion of data is executed in the main thread.

[0065] It is determined that the object asynchronous deletion task is submitted accurately, which indicates that the submitted object asynchronous deletion task matches the object deletion request sent by the client, and there is no situation where the user requests to delete file A but mistakenly submits the asynchronous deletion task of file B. Only then is the metadata synchronously deleted, which can avoid the situation where the metadata is successfully deleted but the physical file is not successfully deleted subsequently, and can avoid the situation where the physical files of other objects other than the object to be deleted are mistakenly deleted.

[0066] First, the metadata is deleted synchronously, and then the entity file, i.e., the shard file corresponding to the object to be deleted, is asynchronously deleted by processing the object asynchronous deletion task, so that the operation of deleting metadata and the operation of deleting entity files can be decoupled.

[0067] In the object deletion method provided in the embodiment of the present application, the metadata server in the object storage system submits an asynchronous object deletion task according to the object unique identifier carried in the object deletion request sent by the client. When it is determined that the asynchronous object deletion task is accurately submitted, the metadata of the object to be deleted is synchronously deleted according to the object unique identifier carried in the object deletion request, and the asynchronous object deletion task is processed according to the object unique identifier carried in the shard file corresponding to the object to be deleted. This can avoid the situation where the metadata is successfully deleted but the physical file is not successfully deleted due to reasons such as the object deletion task failing to be accurately submitted, and the physical files of other objects other than the object to be deleted are mistakenly deleted, thereby avoiding the risk of data inconsistency, ensuring data integrity and system security, and improving the user's data storage experience. It can also decouple the task of deleting metadata from the task of deleting shard files, thereby improving the object deletion speed, avoiding user operation blocking, improving the flexibility of the system, and reducing the complexity of system implementation, thereby improving system performance and concurrent processing capabilities.

[0068] As described above, the key to identifying whether the object asynchronous deletion task is submitted accurately is whether the submitted object asynchronous deletion task matches the object deletion request sent by the client. Accordingly, in some embodiments, determining that the object asynchronous deletion task is submitted accurately may include: determining that the object unique identifier indicated after the object asynchronous deletion task is submitted is consistent with the object unique identifier carried in the object deletion request.

[0069] By determining whether the object unique identifier indicated after the object asynchronous deletion task is submitted is consistent with the object unique identifier carried in the object deletion request, it is possible to avoid the situation where the object deletion task submitted by the metadata server does not match the object requested to be deleted by the client, thereby avoiding the situation where the metadata is successfully deleted but the physical file is not successfully deleted, and avoiding the situation where the physical files of other objects other than the object to be deleted are mistakenly deleted.

[0070] In the embodiment of the present application, the object unique identifier is embedded in the shard file for performing a security check before deleting the shard file. Accordingly, in some embodiments, the object asynchronous deletion task (i.e., step S130) is processed according to the object unique identifier carried in the shard file corresponding to the object to be deleted, such as Figure 2 As shown, the following steps may be included:

[0071] In step S210, the object asynchronous deletion task is started;

[0072] In step S220, the first to-be-deleted shard file corresponding to the to-be-deleted object is read;

[0073] In step S230, the object unique identifier is read from the first shard file to be deleted;

[0074] In step S240, when it is determined that the security check has passed according to the read unique identifier of the object, each to-be-deleted fragment file corresponding to the to-be-deleted object is deleted from the corresponding storage device respectively;

[0075] In step S250, when it is determined that the security check fails according to the read unique identifier of the object, the asynchronous deletion task of the object is abandoned.

[0076] In order to distinguish the fragment files corresponding to the to-be-deleted object from the fragment files corresponding to other objects, the fragment files corresponding to the to-be-deleted object are referred to as the to-be-deleted fragment files.

[0077] Among them, the shard file includes a data part and a description information part. The description information is used to identify the location of the shard file and the object to which it belongs, such as an object unique identifier used to indicate which object the shard file belongs to, and a shard unique identifier (Part ID) used to identify the position order of the shard file in the object.

[0078] Among them, it is only necessary to perform a security check when deleting the first shard file to be deleted. That is to say, if it is determined that the security check passes when deleting the first shard file to be deleted, the first shard file to be deleted will be deleted, and the subsequent shard files to be deleted will be deleted normally. If it is determined that the security check fails when deleting the first shard file to be deleted, the entire object asynchronous deletion task will be directly abandoned and the object deletion process will be ended.

[0079] The data of each object in the object storage system may be fragmented into multiple fragment files for storage to optimize data distribution and improve storage efficiency. However, the actual number of fragment files to be deleted corresponding to the object to be deleted is determined by the specific implementation method of the object storage, and the embodiments of the present application do not limit this and do not need to limit this. It can be understood that the number of fragment files to be deleted corresponding to the object to be deleted is at least one, and the object deletion method provided in the embodiments of the present application can be executed normally under any number.

[0080] By reading the object unique identifier from the first shard file to be deleted and performing a security check based on the read object unique identifier, the security of the current operation of deleting the shard file to be deleted can be ensured.

[0081] As described above, if the metadata is not successfully deleted but the shard file to be deleted is deleted, data inconsistency will occur. The applicant of the present application can further perform a security check by identifying whether the metadata still exists in the system before deleting the first shard file to be deleted. Accordingly, in some embodiments, it is determined whether the security check is passed based on the read unique identifier of the object, such as Figure 3 As shown, the following steps may be included:

[0082] In step S310, it is determined whether there is metadata including the read unique identifier of the object;

[0083] In step S320, if it is determined that there is no metadata including the read unique identifier of the object, it is determined that the security check has passed; otherwise, it is determined that the security check has failed.

[0084] Among them, it can be understood that when it is determined that there is metadata including the unique identifier of the object read, it means that the metadata of the object to be deleted has not been successfully deleted. At this time, it is determined that the security check has not passed, and then the execution of the object asynchronous deletion task is abandoned. Before deleting the shard file to be deleted, a reverse check is performed first, which can avoid the situation where the metadata cannot be successfully deleted but the physical file is successfully deleted, thereby avoiding the risk of data inconsistency, ensuring the integrity of the data and the security of the system, and improving the user's data storage experience.

[0085] In some embodiments, the object asynchronous deletion task carries the storage path of each to-be-deleted shard file corresponding to the to-be-deleted object, and the reading of the first to-be-deleted shard file corresponding to the to-be-deleted object (ie, step S220) is as follows: Figure 4 As shown, the following steps may be included:

[0086] In step S410, the storage path of the first to-be-deleted shard file corresponding to the to-be-deleted object is obtained;

[0087] In step S420, the first shard file to be deleted corresponding to the object to be deleted is read from the corresponding storage device according to the storage path of the first shard file to be deleted.

[0088] It can be understood that after step S420 is executed, if it is determined that the security check has passed based on the unique identifier of the object read from the first shard file to be deleted, the first shard file to be deleted will be deleted, and further, the storage path of the second shard file to be deleted corresponding to the object to be deleted is obtained, so that the second shard file to be deleted corresponding to the object to be deleted is deleted from the corresponding storage device, and further, the storage path of the third shard file to be deleted corresponding to the object to be deleted is obtained... until all shard files to be deleted corresponding to the object to be deleted are deleted.

[0089] As described above, the metadata of an object refers to the descriptive information used to describe and manage the properties and status of an object, and an object asynchronous deletion task can be submitted based on the metadata. Accordingly, in some embodiments, the object asynchronous deletion task is submitted according to the object unique identifier carried in the object deletion request sent by the client (i.e., step S110), such as Figure 5 As shown, the following steps may be included:

[0090] In step S510, according to the object unique identifier carried in the object deletion request, the metadata of the object to be deleted is queried and obtained;

[0091] In step S520, an object asynchronous deletion task is submitted according to the metadata of the object to be deleted.

[0092] Among them, the object asynchronous deletion task can be submitted according to the information such as file size, number of shards, storage nodes, etc. described by the metadata.

[0093] In some embodiments, when it is determined that the object asynchronous deletion task is submitted accurately, the metadata of the object to be deleted is synchronously deleted according to the object unique identifier carried in the object deletion request (i.e., step S120), which may include the following steps: when it is determined that the object asynchronous deletion task is submitted accurately, all metadata including the object unique identifier carried in the object deletion request are synchronously deleted.

[0094] If it is determined that the object asynchronous deletion task is not submitted accurately, it indicates that there may be a problem with the business logic of the object storage system. In this case, the client may be notified of the deletion failure. Accordingly, in some embodiments, such as Figure 6 As shown, the method may further include the following steps:

[0095] In step S140, when it is determined that the object asynchronous deletion task is not accurately submitted, a deletion failure notification message carrying the object unique identifier carried in the object deletion request is sent to the client.

[0096] The following reference Figure 7 The object deletion method provided in the embodiment of the present application is briefly described below:

[0097] like Figure 7 As shown, the metadata server (Server) receives the object deletion request sent by the client (User), obtains metadata based on the object unique identifier carried in the object deletion request, submits the object asynchronous deletion task, and determines whether the object asynchronous deletion task is submitted accurately;

[0098] If submitted accurately, the metadata of the object to be deleted will be deleted synchronously, a deletion success notification message will be returned to the client, the object asynchronous deletion task will be started, the storage path of the first shard file to be deleted corresponding to the object to be deleted will be obtained, the first shard file to be deleted will be read, the object unique identifier will be read from the first shard file to be deleted, and it will be determined whether there is metadata including the read object unique identifier. If so, the object asynchronous deletion task will be abandoned and the object deletion process will be ended. If not, each shard file to be deleted will be deleted;

[0099] If the submission is not accurate, a deletion failure notification message will be returned to the client.

[0100] As a second aspect of the embodiments of the present application, an electronic device is provided, wherein: Figure 8 As shown, the electronic device includes:

[0101] One or more processors 101;

[0102] The memory 102 stores one or more computer programs. When the one or more computer programs are executed by the one or more processors 101, the one or more processors 101 implement the object deletion method provided in the first aspect of the embodiment of the present application.

[0103] The electronic device may further include one or more I / O interfaces 103 connected between the processor 101 and the memory 102 and configured to implement information interaction between the processor 101 and the memory 102 .

[0104] Among them, the processor 101 is a device with data processing capabilities, including but not limited to a central processing unit (CPU), etc.; the memory 102 is a device with data storage capabilities, including but not limited to random access memory (RAM, more specifically SDRAM, DDR, etc.), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory (FLASH); the I / O interface (read-write interface) is connected between the processor and the memory, and can realize information exchange between the processor and the memory, including but not limited to a data bus (Bus), etc.

[0105] In some embodiments, the processor 101 , the memory 102 , and the I / O interface 103 are connected to each other via a bus 104 , and further connected to other components of the computing device.

[0106] As a third aspect of the embodiment of the present application, Fig. 9 As shown, a computer-readable medium is provided, on which a computer program is stored, wherein the computer program, when executed by a processor, implements the object deletion method provided in the first aspect of the embodiment of the present application.

[0107] It can be understood by a person of ordinary skill in the art that all or part of the processes in the above-mentioned embodiment methods can be implemented by instructing the relevant hardware through a computer program. Accordingly, the computer program can be stored in a non-volatile computer-readable storage medium, and the computer program can implement the method of any of the above-mentioned embodiments when executed. Among them, any reference to memory, storage, database or other media used in the embodiments provided in the embodiments of the present application may include non-volatile and / or volatile memory. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.

[0108] The above are only specific embodiments of the present application, but the protection scope of the present application is not limited thereto. Those skilled in the art should understand that the present application includes but is not limited to the contents described in the drawings and the above specific embodiments. Any modification that does not deviate from the functional and structural principles of the present application will be included in the scope of the claims.

Claims

1. An object deletion method, used in a metadata server in an object storage system, characterized in that: The method comprises: Submit an object asynchronous deletion task based on the object unique identifier carried in the object deletion request sent by the client; When it is determined that the object asynchronous deletion task is accurately submitted, the metadata of the object to be deleted is synchronously deleted according to the object unique identifier carried in the object deletion request; According to the object unique identifier carried in the fragment file corresponding to the object to be deleted, the object asynchronous deletion task is processed.

2. The method according to claim 1, characterized in that The step of determining that the object asynchronous deletion task is accurately submitted includes: It is determined that the object unique identifier indicated after the object asynchronous deletion task is submitted is consistent with the object unique identifier carried in the object deletion request.

3. The method according to claim 1, characterized in that The processing of the object asynchronous deletion task according to the object unique identifier carried in the shard file corresponding to the object to be deleted includes: Start the asynchronous deletion task of the object; Read the first shard file to be deleted corresponding to the object to be deleted; Read the object unique identifier from the first shard file to be deleted; When it is determined that the security check has passed according to the read unique identifier of the object, the to-be-deleted fragment files corresponding to the to-be-deleted object are deleted from the corresponding storage device respectively; When it is determined that the security check fails according to the read unique identifier of the object, the asynchronous deletion task of the object is abandoned.

4. The method according to claim 3, characterized in that Determining whether the security check is passed according to the read unique identifier of the object includes: Determining whether there is metadata including the read unique identifier of the object; If it is determined that there is no metadata including the read unique identifier of the object, it is determined that the security check has passed; otherwise, it is determined that the security check has failed.

5. The method according to claim 3, characterized in that: The object asynchronous deletion task carries the storage path of each to-be-deleted shard file corresponding to the to-be-deleted object, and the reading of the first to-be-deleted shard file corresponding to the to-be-deleted object includes: Get the storage path of the first shard file to be deleted corresponding to the object to be deleted; According to the storage path of the first shard file to be deleted, the first shard file to be deleted corresponding to the object to be deleted is read from the corresponding storage device.

6. The method according to any one of claims 1 to 5, characterized in that Submitting the object asynchronous deletion task according to the object unique identifier carried in the object deletion request sent by the client includes: According to the object unique identifier carried in the object deletion request, query and obtain metadata of the object to be deleted; Submit an object asynchronous deletion task according to the metadata of the object to be deleted.

7. The method according to any one of claims 1 to 5, characterized in that When it is determined that the object asynchronous deletion task is accurately submitted, according to the object unique identifier carried in the object deletion request, the metadata of the object to be deleted is synchronously deleted, including: When it is determined that the object asynchronous deletion task is submitted accurately, metadata including the object unique identifier carried in the object deletion request are synchronously deleted.

8. The method according to any one of claims 1 to 5, characterized in that The method further comprises: When it is determined that the object asynchronous deletion task is not submitted accurately, a deletion failure notification message carrying the object unique identifier carried in the object deletion request is sent to the client.

9. An electronic device, characterized in that: The electronic device comprises: one or more processors; A memory having one or more computer programs stored thereon, wherein when the one or more computer programs are executed by the one or more processors, the one or more processors implement the object deletion method according to any one of claims 1-8.

10. A computer readable medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the object deletion method according to any one of claims 1 to 8 is implemented.