Image processing method and device, electronic equipment and readable storage medium
By scanning and updating identifiers in disk blocks, the problems of space reclamation and access stability in aggregated image storage are solved, achieving space reclamation and stable access without additional management.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHONGQING UNISINSIGHT TECH CO LTD
- Filing Date
- 2022-11-23
- Publication Date
- 2026-04-10
AI Technical Summary
In existing technologies, the aggregated image storage method makes it impossible to delete individual images independently, resulting in the inability to reclaim space after deletion and unstable access addresses, requiring complex metadata management or upper-layer business awareness of migration changes.
By scanning different identifiers in the disk block, updating the write pointer and migration identifier, image migration and space reclamation are achieved, and a jump identifier is written at the original offset to ensure stable access address.
It enables the reclamation of space for aggregated images without the need for complex metadata management, ensuring that upper-layer services can access images smoothly through the original access address.
Smart Images

Figure CN115756330B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of picture storage, in particular to a processing method and device for aggregated pictures, electronic equipment and readable storage medium. BACKGROUND
[0002] With the development of AI, big data and other technologies, the application of various picture recognition technologies, the number of picture files is growing explosively, and how to save these massive pictures is a difficult problem in the industry.
[0003] The commonly used way is to aggregate multiple picture files into one large file, and then add the name of the large file, the offset and length of the picture in the large file as the access address of the picture. This way effectively reduces the number of files and reduces the burden of metadata.
[0004] But the biggest problem of picture aggregation is that a single picture is not an independent file externally, but only a piece of data in a large file. If you want to delete a single picture, the most common way is "marked deletion and migration recycling". This method may cause the address saved by the upper business to be unable to correctly access the undeleted picture, or the storage system itself needs to add additional mapping management to successfully access the undeleted picture. SUMMARY
[0005] One of the purposes of the present application is to provide a processing method and device for aggregated pictures, electronic equipment and readable storage medium, which can recycle the space after picture deletion and successfully access the picture through the access address of the first written picture.
[0006] In a first aspect, the present application provides a processing method for aggregated pictures, comprising:
[0007] Taking the scan pointer of the disk block as the starting position, sequentially scanning the data at each offset position of the disk block;
[0008] When a deletion identifier is scanned, continue scanning after updating the write pointer based on the byte length of the deletion identifier and the current scan pointer; until the scan pointer reaches the tail of the disk block; the deletion identifier indicates that the picture is marked for deletion;
[0009] When a header identifier or a migration identifier is scanned, migrate the target picture data corresponding to the header identifier or the migration identifier to the write pointer, and after writing a jump identifier and the offset of the write pointer at the original offset of the target picture data, continue scanning until the scan pointer reaches the tail of the disk block; the header identifier indicates that the picture has not been migrated and has not been deleted; the migration identifier and the jump identifier indicate that the picture has been migrated;
[0010] When a jump identifier is scanned, the scanning continues after the scanning pointer is updated until the scanning pointer reaches the end of the disk block.
[0011] In a second aspect, the present application provides a processing device for aggregating pictures, comprising:
[0012] a scanning module, configured to scan data at each offset position of the disk block successively, starting from a scanning pointer of the disk block;
[0013] the scanning module is configured to, when a deletion identifier is scanned, continue scanning after a write pointer is updated based on a byte length of the deletion identifier and the scanning pointer, until the scanning pointer reaches the end of the disk block; the deletion identifier represents that a picture is marked for deletion;
[0014] a migration module, configured to, when a header identifier or a migration identifier is scanned, migrate target picture data corresponding to the header identifier or the migration identifier to the write pointer, and continue scanning after a jump identifier and an offset of the write pointer are written at an original offset of the target picture data, until the scanning pointer reaches the end of the disk block; the header identifier represents that a picture is not migrated and not deleted; the migration identifier and the jump identifier represent that a picture is migrated;
[0015] the scanning module is configured to, when a jump identifier is scanned, continue scanning after the scanning pointer is updated, until the scanning pointer reaches the end of the disk block.
[0016] In a third aspect, the present application provides an electronic device, comprising a processor and a memory, wherein the memory stores a computer program executable by the processor, and the processor is capable of executing the computer program to implement the method of the first aspect.
[0017] In a fourth aspect, the present application provides a storage medium, which stores a computer program, and the computer program is executed by a processor to implement the method of the first aspect.
[0018] The application provides a polymeric picture processing method and device, electronic equipment and readable storage medium. In the process of scanning the disk block, different marks are scanned and processed. When a deletion mark is scanned, it is indicated that the picture at the position has been marked for deletion. At this time, the write pointer can be updated and scanning can be continued. When a head mark or a migration mark is scanned, it is indicated that the picture data at the position has not been migrated or has been migrated. At this time, the picture at the position can be migrated to the position of the write pointer. Then, the jump mark at the original offset of the picture and the offset of the write pointer are written. The offset of the write pointer is used as the new offset of the picture. In this way, when the upper-layer business software accesses according to the stored access address, the position of the jump mark is directly positioned, and then the picture is accessed according to the new offset. The space recycling is realized, and the picture is successfully accessed through the access address returned in the first writing. Further, when a turn mark is scanned, it is indicated that the picture at the position has been migrated. At this time, the scanning pointer can be updated and scanning can be continued until the tail of the disk block is scanned. The whole process can make the space after deletion be recycled, and there is no complex metadata mapping management in the migration process. Instead, the new write address of the migrated picture is stored in the original write position, so that the picture is successfully accessed through the access address returned in the first writing. BRIEF DESCRIPTION OF DRAWINGS
[0019] In order to more clearly illustrate the technical solutions of the embodiments of the application, the following will briefly introduce the drawings needed to be used in the embodiments. It should be understood that the following drawings only show some of the embodiments of the application, and therefore should not be regarded as a limitation to the scope. For those skilled in the art, other related drawings can also be obtained without creative labor.
[0020] Figure 1 The application environment schematic diagram of the polymeric picture processing method provided by the embodiments of the application is shown.
[0021] Figure 2 The example diagram of the packaged picture data provided by the embodiments of the application is shown.
[0022] Figure 3 The schematic flowchart of the polymeric picture processing method provided by the embodiments of the application is shown.
[0023] Figure 4 The schematic diagram of updating the write pointer provided by the embodiments of the application is shown.
[0024] Figure 5 The data format schematic diagram of the migrated picture provided by the embodiments of the application is shown.
[0025] Figure 6 The schematic diagram of the jump mark at the original offset and the new offset provided by the embodiments of the application is shown.
[0026] Figure 7 A schematic diagram of updating a scan pointer is provided for an embodiment of the present application;
[0027] Figure 8 A schematic flowchart of another processing method of aggregating pictures is provided for an embodiment of the present application;
[0028] Figure 9 A schematic flowchart of another processing method of aggregating pictures is provided for an embodiment of the present application;
[0029] Figure 10 A picture data format after deletion is provided for an embodiment of the present application;
[0030] Figure 11 A data format of a jump pointer after deletion is provided for an embodiment of the present application;
[0031] Figure 12 Another schematic flowchart of a processing method of aggregating pictures is provided for an embodiment of the present application;
[0032] Figure 13 A functional module diagram of a processing device of aggregating pictures is provided for an embodiment of the present application;
[0033] Figure 14 A schematic diagram of an electronic device is provided for an embodiment of the present application. DETAILED DESCRIPTION
[0034] In order to make the objectives, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are some but not all of the embodiments of the present application. The components of the embodiments of the present application described and shown in the drawings herein can be arranged and designed in various different configurations.
[0035] Therefore, the following detailed description of the embodiments of the present application provided in the drawings is not intended to limit the scope of the claimed application, but merely represents selected embodiments of the application. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative work are within the scope of protection of the present application.
[0036] It should be noted that: similar reference numerals and letters represent similar items in the following drawings, therefore, once an item is defined in one drawing, it does not need to be further defined and explained in subsequent drawings.
[0037] In the description of the present application, it should be noted that if the terms "upper", "lower", "inner", "outer" and the like indicate the orientation or positional relationship shown in the drawings, or the orientation or positional relationship in which the product of the present application is usually placed, only for the convenience of describing the present application and simplifying the description, and it is not intended to indicate or imply that the device or element referred to must have a particular orientation, be constructed and operated in a particular orientation, and therefore cannot be understood as a limitation on the present application.
[0038] In addition, if the terms "first", "second" and the like appear, they are only used to distinguish the description and cannot be understood as indicating or implying relative importance.
[0039] It should be noted that the features in the embodiments of the present application can be combined with each other without conflict.
[0040] Before introducing the embodiments of the present application, the related terms involved in the embodiments of the present application are explained:
[0041] Head identifier: used to mark the data of the picture which is not deleted and not migrated after writing, the embodiments of the present application use "0x25, 0x68, 0x65, 0x61, 0x64" to represent, wherein 0x25 is the ASCII code of '%', which is a commonly used escape character and not in the encoding character range of base64, so it can be used as an identifier, as the beginning of the picture data, and the subsequent 0x68, 0x65, 0x61, 0x64 are the ASCII codes of the letters "head".
[0042] Deletion identifier: used to mark the data of the deleted picture, the embodiments of the present application use "0x25, 0x64, 0x65, 0x6c, 0x64 (% dele)" to represent.
[0043] Migration identifier: used to mark the data of the picture which is not deleted but migrated after writing, the embodiments of the present application use "0x25, 0x6E, 0x65, 0x77, 0x6F (% newp)" to represent.
[0044] Jump identifier: used to point to the data of the migrated picture, the embodiments of the present application use "0x25, 0x6A, 0x75, 0x6D, 0x70 (% jump)" to represent.
[0045] The above four types of data can be identified using different encapsulation headers, and the above representation method is only one example, which is not limited in the present application.
[0046] Please refer to Figure 1 , Figure 1The application environment schematic diagram of the method for processing aggregated pictures provided by the embodiment of the present application is shown in the application environment, which comprises a client 10 (for example, a notebook computer, a tablet computer, a smart terminal), a network 11 and a server 12. The server 12 can be a physical server, a server cluster composed of multiple physical servers or a distributed system. It should be noted that, Figure 1 In the optional embodiment, the client 10 and the server 12 can also be deployed in the same electronic device, which is not limited in the embodiment of the present application.
[0047] In the embodiment of the present application, the client 10 can have, but is not limited to, a protocol analysis unit and a data distribution unit.
[0048] The protocol analysis unit is used to receive picture data sent by various standard or non-standard storage protocols, and convert the received picture data into a unified standard picture format. The protocol can be private or meet a certain public standard. If it is a public standard protocol, it also involves parsing and separating the picture data from the protocol. The embodiment adopts the simplest private protocol mode.
[0049] The data distribution unit: the client 10 sends the picture data to one of the server nodes for storage according to the load condition of each server node. The load balancing mode can be according to the remaining capacity, the number of connections, the CPU and the memory occupation of each server node.
[0050] The server 12 runs at each storage node. When the server 12 receives the picture data sent by the client 10, it converts and encapsulates the received picture data into an internal data format. The conversion and encapsulation mode can be determined according to different scenarios.
[0051] As an optional embodiment, the conversion mode adopted by the embodiment is base64 (base64 is a common data encoding method, and the principle thereof will not be described in detail herein). The converted data also needs to be encapsulated. The encapsulation is to add a specific identification character in the header of the converted picture data, that is, the header identification “%head” in the embodiment of the present application. In addition to the fixed 5 bytes in the header, 4 bytes are also needed to save the space length occupied by the picture, so the encapsulated picture data is as shown in Figure 2 Figure 2 The example diagram of the encapsulated picture data provided by the embodiment of the present application.
[0052] The server 12 writes the converted and encapsulated picture data into the disk, and returns the access address of the picture to the upper-layer business software.
[0053] In the embodiment of the present application, the access address of the picture is defined as: node number + disk number + block number + offset + length.
[0054] Considering that there are multiple server nodes in a storage cluster, each server node is installed with multiple disks, and the capacity of a single disk is large, the disk can be divided, for example, a disk is divided into a plurality of disk blocks, in the embodiment of the present application, for each disk block, the first 4 KB space is used to record the usage of the disk block, and the information to be recorded includes: 1. deletion rate (the ratio of the marked deletion capacity to the written capacity), occupying 1 byte. Through the deletion rate, it can be determined whether the disk block needs to be migrated and recycled; 2. the current write pointer, used to indicate the current write position of the disk block.
[0055] The recording of the above two information only needs to occupy 5 bytes, and the remaining space can be reserved, and the remaining disk space is evenly divided according to the size of 1 GB, and the offset address of the disk block on the disk can be directly calculated according to the disk block number recorded in the access address.
[0056] For example, taking a cluster composed of 16 storage nodes as an example, each node has 40 disks, each disk has a size of 18 TB, and the disk block size is divided according to 1 GB.
[0057] The node number is defined as 1 byte (up to 256 nodes can be identified, and if more nodes are needed, the number length can be increased).
[0058] The disk number is defined as 1 byte (up to 256 disks can be identified, and it is difficult for a single node hard disk to exceed this value, so it is generally not necessary to increase the length).
[0059] The block number is defined as 2 bytes (up to 65536 blocks can be identified, and according to the size of 1 GB of a single block, a disk of 64 TB can be supported).
[0060] The offset and length are in bytes, and each 4 bytes are needed to identify a 1 GB disk block.
[0061] Therefore, 8 bytes are needed to identify the access address of a picture, for example: 2183E2F 1B06FF7E represents that the 2nd node, the 24th block disk, and the 15919th disk block offset is 453443454 bytes.
[0062] Referring to Figure 1 , the currently commonly used storage method is to aggregate multiple picture files into a large file, that is, multiple picture data as shown in Figure 2 are aggregated and stored together, and then the name of the large file plus the offset and length of the picture in the large file are used as the access address of each picture. This aggregation storage method effectively reduces the number of files and reduces the burden of metadata.
[0063] However, the biggest problem of the picture aggregation mode is that a single picture cannot be deleted independently, because a single picture is not an independent file externally, but only a piece of data in a large file. There are various solutions to this problem, and the most common one is "marked deletion and migration recovery". For example, the following process:
[0064] 1. When a picture needs to be deleted, mark its offset and length in the large file as free, but do not actually delete the data.
[0065] 2. Periodically scan the large file, and when it is found that the proportion of a large file marked as free exceeds a preset value (for example, 50%), migrate and recover the large file.
[0066] 3. The migration and recovery method can be to read the pictures in the large file that have not been marked for deletion and write them into another large file to generate a new aggregated large file. When all the un-deleted pictures in the original large file have been migrated, the original large file is deleted to release space.
[0067] The applicant has found that the above migration and recovery scheme has a major problem: after the un-deleted pictures are migrated to a new large file, their access addresses change, causing the addresses saved by the upper-layer business to be unable to access the picture data. To solve this problem, one of the following two methods must be used:
[0068] 1. The upper-layer business software needs to be aware of the changes in the underlying picture migration and update the picture access addresses saved by itself, which requires defining a complex interaction protocol and coupling different levels of software, which is not conducive to software maintenance and the connection of the storage system with more business software.
[0069] 2. Alternatively, the storage system itself can add additional mapping management and record the changes in the access addresses before and after migration, so as to not affect the upper-layer business software. However, the additional metadata management makes the advantages of picture aggregation meaningless.
[0070] To solve the above problems, the embodiment of the present application provides a picture aggregation processing method, which can support picture deletion without adding additional file indexes, the space after deletion can be recycled, and the business layer is not aware of the changes in the migration position of the underlying aggregated small file, and can still access through the address information returned during the first write.
[0071] The picture aggregation processing method provided by the embodiment of the present application is introduced below, please refer to Figure 3 , Figure 3 The schematic flowchart of the picture aggregation processing method provided by the embodiment of the present application can include:
[0072] S301, taking the scanning pointer of the disk block as a starting position, scanning data at each offset position of the disk block in sequence;
[0073] S302, when a deletion identifier is scanned, continuing scanning after updating the write pointer based on the byte length of the deletion identifier and the current scanning pointer until the scanning pointer reaches the tail of the disk block; the deletion identifier represents that the picture is marked for deletion;
[0074] S303, when a head identifier or a migration identifier is scanned, migrating the target picture data corresponding to the head identifier or the migration identifier to the write pointer, and after writing a jump identifier and the offset of the write pointer at the original offset of the target picture data, continuing scanning until the scanning pointer reaches the tail of the disk block; the head identifier represents that the picture is not migrated and not deleted; the migration identifier and the jump identifier represent that the picture is migrated;
[0075] S304, when the write data is a jump identifier, continuing scanning after updating the scanning pointer until the scanning pointer reaches the tail of the disk block.
[0076] In the above processing method of the aggregated picture, in the process of scanning the disk block, different cases are handled according to different identifiers scanned, when a deletion identifier is scanned, it represents that the picture at this position has been marked for deletion, at this time, the write pointer can be updated and scanning can be continued, when a head identifier or a migration identifier is scanned, it represents that the picture data at this position has not been migrated or has been migrated, at this time, the picture at this position can be migrated to the position of the write pointer, and then a jump identifier and the offset of the write pointer are written at the original offset of the picture, the offset of the write pointer is taken as a new offset of the picture, in this way, if the upper-layer business software accesses according to the stored access address, the position of the jump identifier is directly located, and then the picture is accessed according to the new offset, not only the space recycling is realized, but also the picture is successfully accessed through the access address returned by the first write, further, if a migration identifier is scanned, it represents that the picture at this position has been migrated, at this time, the scanning pointer can be updated and scanning can be continued until the tail of the disk block is reached, the whole process can make the space after deletion be recycled, and there is no complex metadata mapping management in the migration process, but the new write address of the migrated picture is stored at the original write position, so that the effect of successfully accessing the picture through the access address returned by the first write is realized.
[0077] The above steps will be described and explained in detail below in combination with relevant drawings.
[0078] In step S301, taking the scanning pointer of the disk block as a starting position, scanning data at each offset position of the disk block in sequence.
[0079] In the embodiment of the present application, at least one disk block can be obtained from the recycle queue for scanning, and space recycling processing is performed, in order to improve the recycling efficiency, multiple recycling threads can be started, and the business load condition can be flexibly adjusted.
[0080] The recycle queue is used to maintain the disk block whose deletion rate is greater than 50% and whose write pointer is greater than 0X20000000, that is, the disk block has been used for more than half, and the deleted data is also more than half.
[0081] In the embodiment of the present application, the scanning pointer and the write pointer are both offsets, which are used to represent the current write position and the current scanning position, respectively.
[0082] Taking the write pointer as an example, it can be composed of node number+disk number+block number+offset, the offset indicates that the space after the offset is free, if the write pointer points to the end of the disk block, it indicates that the disk block is full, and subsequent data cannot be written into the block, and it occupies 4 bytes.
[0083] In the actual implementation process, for each disk block, the recycling thread maintains an initial write pointer and an initial scanning pointer, which are both initialized to point to the 4K+1 byte of the disk block, and then the disk scanning starts from the offset position.
[0084] In the embodiment of the present application, the scanning pointer is used to scan the disk block which has been written full, and the picture data which has not been deleted in the disk block is migrated and concentrated together to release the deleted picture space, in order to improve the efficiency, multiple scanning pointers can be maintained for parallel scanning.
[0085] The scanned data can be one of the head identifier, the migration identifier, the deletion identifier and the jump identifier, and the following will introduce the scanning conditions in detail.
[0086] Case one:
[0087] S302, when the deletion identifier is scanned, the write pointer is updated based on the byte length of the deletion identifier and the current scanning pointer, and then the scanning is continued until the scanning pointer reaches the end of the disk block; the deletion identifier represents that the picture is marked for deletion.
[0088] In the embodiment of the present application, the deletion identifier is used to mark the deleted picture, and then the pictures at other positions can be migrated to the space occupied by the deleted picture to realize the recycling of the space.
[0089] Specifically, the write-in pointer can be updated based on the length of the identified byte (in the embodiment of the present application, the length of various identified bytes is uniformly 5 bytes, and the length of the picture data is uniformly 4 bytes, which can be adjusted according to actual scenarios, and is not limited here) and the current position of the scanning pointer, that is, the scanning pointer is subtracted by the length of the byte to obtain the updated write-in pointer, which is used to indicate that the picture is migrated to the write-in pointer.
[0090] For example, as shown in Figure 4 , Figure 4 The schematic diagram of updating the write-in pointer provided by the embodiment of the present application is shown in the figure. When the continuous 0x25, 0x64, 0x65, 0x6c, 0x64 (% dele) are scanned, it indicates that the picture has been deleted, and at this time the scanning pointer has pointed to the next address of 0x64. The write-in pointer is assigned as: scanning pointer-5, at this time the write-in pointer points to 0x25, and the migrated picture can be written from the 0x25 position subsequently, thereby realizing space recycling.
[0091] Case two:
[0092] S303, when the head identifier or the migration identifier is scanned, the target picture data corresponding to the head identifier or the migration identifier is migrated to the write-in pointer, and after the original offset of the target picture data writes the jump identifier and the offset of the write-in pointer, the scanning is continued until the scanning pointer reaches the tail of the disk block.
[0093] In the embodiment of the present application, the head identifier is used to mark a normal picture which is not deleted and not migrated after being written in, and the migration identifier is used to mark a migrated picture which has been migrated at least once. When the head identifier or the migration identifier is scanned, the normal picture or the migrated picture can be migrated to the current write-in pointer, at this time the write-in pointer can be the initial write-in pointer or the updated write-in pointer.
[0094] In order to ensure that the upper layer business software can still access the migrated picture based on the access address obtained after the picture is first written in after the picture is migrated, the embodiment of the present application adopts a way of setting a jump pointer at the original access address to achieve it, that is, after the picture is migrated, the jump identifier and the offset of the write-in pointer are written at the original offset. The jump identifier is used to indicate that the picture has been migrated in the picture reading process. The offset of the write-in pointer is the new offset of the picture after migration, that is, the new access address, which is used to indicate that the reading image is instructed to jump to the current storage position of the migrated picture, that is, the migrated picture can be accessed smoothly.
[0095] The embodiment of the present application will be explained below for the above two scenarios respectively:
[0096] Scenario one: the scanned data is the head identifier
[0097] When the head identifier is scanned, one implementation of the above step S303 can include the following process:
[0098] a1: When the head identifier is scanned, the target picture data is migrated to the write pointer.
[0099] a2: The head identifier of the migrated target picture data is changed to a migration identifier, and the original offset is written after the migration identifier.
[0100] a3: The head identifier at the original offset is changed to a jump identifier, and the scanning continues after the offset of the write pointer after the jump identifier until the scanning pointer reaches the end of the disk block.
[0101] For example, when 0x25, 0x68, 0x65, 0x61, 0x64 (%head) is scanned, it indicates that the picture has not been deleted and has not been migrated, at this time, the data of the picture needs to be copied to the position of the write pointer, and 0x25, 0x68, 0x65, 0x61, 0x64 (%head) is changed to a migration identifier, that is, 0x25, 0x6E, 0x65, 0x77, 0x6F (%newp), and then, the next four bytes after the migration identifier are used to record the original write address, and the data format of the migrated picture is as shown in Figure 5 . Figure 5 The data format of the migrated picture provided by the embodiment of the application is shown in the figure, and the original offset functions to: when the migrated picture is migrated again, the position of the jump identifier can be located through the original offset, and then the new offset after the jump identifier is written to ensure that the migrated picture can be accessed smoothly in the future.
[0102] Referring to Figure 6 , Figure 6 The figure shows the jump identifier and the new offset at the original offset, at the original offset, the original head identifier 0x25, 0x68, 0x65, 0x61, 0x64 (%head) is changed to a jump identifier, that is, 0x25, 0x6A, 0x75, 0x6D, 0x70 (%jump), and the new offset is written after the jump identifier, and the jump identifier and the new offset serve as a jump pointer, pointing to the write position of the migrated picture.
[0103] Scenario two: when the migration identifier is scanned
[0104] When the head identifier is scanned, another implementation of the above step S303 can include the following process:
[0105] b1: When the migration identifier is scanned, the original offset after the migration identifier is read;
[0106] b2: migrate the target picture data to the write pointer.
[0107] b3: based on the original offset, jump to the jump identifier corresponding to the target picture data, and continue scanning after the jump identifier and the offset of the write pointer.
[0108] In the embodiment of the present application, when the migration identifier is scanned, it is indicated that the next picture data is migrated, and after the migration is performed again, the original write position is found based on the original offset, and then the new offset is written, so that the subsequent picture can be accessed smoothly.
[0109] Case three:
[0110] S304, when the write data is the jump identifier, the scanning pointer is updated and the scanning is continued until the scanning pointer reaches the end of the disk block.
[0111] In the embodiment of the present application, when the jump identifier is scanned, it is indicated that the position records a jump pointer, which cannot be modified and needs to be skipped after the jump identifier and the next 4 bytes (i.e. the byte length of the new offset) to continue scanning, that is, the current scanning pointer + 4, and the scanning is continued after the scanning pointer is updated, so that the current scanning pointer can be added to the jump identifier and the preset byte length of the offset to complete the update, for example, as shown in Figure 7 . Figure 7 is a schematic diagram of updating the scanning pointer provided by the embodiment of the present application.
[0112] As can be seen from the above embodiment, in the process of migrating and recycling the picture, the embodiment of the present application not only realizes the recycling of the space, but also stores the new offset and the original offset of the migrated picture at the same time in the migration process. The new offset can ensure that the picture can be read smoothly, and the original offset can be positioned at the jump identifier to change the new offset when the migrated picture is migrated again.
[0113] As can be seen from the above embodiment, the original offset of the picture can be written with one of the head identifier, the deletion identifier and the jump identifier. Since the current storage situation of the picture data corresponding to each identifier is different, in order to ensure that the access address based on the first write can read the picture smoothly, the present application further provides a picture reading method, please refer to Figure 8 . Figure 8 is one of the schematic flowcharts of another processing method of the aggregated picture provided by the embodiment of the present application. The method can further include:
[0114] S305, when the reading request is received, the original offset of the picture to be deleted is determined based on the access address in the reading request.
[0115] S306, if the head identifier is obtained by reading from the original offset, a picture data consistent with the picture length is read according to the picture length after the head identifier as the picture to be accessed;
[0116] S307, if the jump identifier is obtained by reading from the original offset, a new offset after the jump identifier is read, and picture data consistent with the picture length is read at the new offset as the picture to be accessed after jumping;
[0117] S308, if the deletion identifier is obtained by reading from the original offset, reading failure is returned.
[0118] In the embodiment of the application, the upper-layer service software can send a reading request, the reading request carrying an access address of the picture to be accessed (the access address is an address fed back to the upper-layer service software when the picture to be accessed is written for the first time), and the access address can be directly positioned to the offset position in the disk, and different identifiers saved according to the offset position are returned according to the following rules:
[0119] Case one: if the first five bytes read are the head identifier, for example, 0x25, 0x68, 0x65, 0x61, 0x64 (%head), it is indicated that the picture has not been deleted and has not been migrated, and the corresponding data is read into the memory according to the data length defined by the next four bytes.
[0120] Case two: if the first five bytes read are the jump identifier, for example, 0x25, 0x6A, 0x75, 0x6D, 0x70 (%jump), it is indicated that the picture has not been deleted but has been migrated, and the picture data is read into the memory according to the new offset defined by the next four bytes after the jump identifier.
[0121] Case three: if the first five bytes read are the deletion identifier, for example, 0x25, 0x64, 0x65, 0x6c, 0x64 (%dele), it is indicated that the picture has been deleted but has not been recycled and migrated, and reading failure is directly returned.
[0122] In the actual scene, if the first five bytes read do not satisfy any of the above cases, reading failure is directly returned, and if the continuous jump identifier is encountered in the reading process, 9 bytes can be directly skipped to continue reading.
[0123] As an optional implementation, after the picture data is read into the memory, the Base64 needs to be converted into the original binary data (here, the conversion can be configured according to the actual demand, because the picture data in the Base64 format can be directly used in most picture use scenarios).
[0124] It should be noted that, in this embodiment of the application, there is no specific execution order between the migration and recycling process and the image reading process; that is, in... Figure 9 In this application, there is no specific order of execution between steps S301 to S304 and steps S305 to S308. That is, steps S301 to S304 can be executed first, followed by steps S305 to S308, or steps S305 to S308 can be executed first, followed by steps S301 to S304. This application does not impose any restrictions on this.
[0125] In an optional implementation, based on the same considerations, the original offset of the image may contain one of a header identifier, a deletion identifier, or a jump identifier. Therefore, when deleting an image, it is also necessary to process it according to different identifiers. Thus, this embodiment of the invention also provides an image deletion method; please refer to [link to relevant documentation]. Figure 9 As shown, Figure 9 A second schematic flowchart illustrating another method for processing aggregated images provided in an embodiment of the present invention, the method may further include:
[0126] S310, When a deletion request is received, the original offset of the image to be deleted is determined based on the access address in the deletion request;
[0127] S311, If the header identifier is obtained by reading from the original offset, then the header identifier is changed to the deletion identifier;
[0128] S312, if the jump flag is obtained by reading from the original offset, the jump flag is changed to the deletion flag, the new offset after the jump flag is assigned to zero, and the jump is made to the migration flag of the image to be deleted based on the new offset, and the migration flag of the image to be deleted is changed to the deletion flag.
[0129] In this embodiment of the invention, if the business side uses an image deletion interface, the interface will pass in the access address of the image to be deleted. Since the access address contains the node number, disk number, block number, and offset, the original offset of the address to be deleted can be directly determined based on this address, and the image data stored on the disk can be rewritten. The rewriting process has two scenarios:
[0130] Scenario 1: If the first 5 bytes are a header identifier, it means the image has not been migrated. In this case, simply change the header identifier to the deletion identifier. For example, change "0x25, 0x68, 0x65, 0x61, 0x64" (%head) to "0x25, 0x64, 0x65, 0x6c, 0x64" (%dele). The image format after deletion will be as follows. Figure 10 As shown, Figure 10 This is one of the image data formats after deletion provided in the embodiments of the present invention.
[0131] Case two: when the first 5 bytes are jump identifier, it means that the picture is migrated, then change the jump identifier to deletion identifier, for example, change "0x25, 0x6A, 0x75, 0x6D, 0x70" (%jump) to "0x25, 0x64, 0x65, 0x6c, 0x64" (%dele), and assign the new offset after the jump identifier to zero, for example, jump to the current position of the picture to be deleted based on the new offset, change the migration identifier here to the deletion identifier, and jump to the offset recorded by the next 4 bytes, for example, change "0x25, 0x6E, 0x65, 0x77, 0x6F" (%newp) to "0x25, 0x64, 0x65, 0x6c, 0x64" (%dele), as shown in Figure 11 , Figure 11 the data format of the jump pointer after deletion provided by the embodiment of the present application.
[0132] In an optional embodiment, after the picture is deleted, the deletion rate of each disk block can also be updated, therefore, the embodiment of the present application also provides an implementation of updating the deletion rate, that is, after the step S312, the following steps can also be performed:
[0133] c1: count all deletion identifiers on the disk block;
[0134] c2: determine the deletion rate of the disk block based on the picture length of the picture data corresponding to each deletion identifier and the total storage length of the disk block;
[0135] c3: write the deletion rate to the header of the disk block.
[0136] In the embodiment of the present application, when the deletion rate exceeds the deletion rate threshold, the disk block can be hung into the recycling queue, so as to realize the recycling effect of the space.
[0137] In an optional embodiment, as can be seen from the above embodiment, the jump identifier stored in each disk block is used to indicate the migrated picture, and the migrated picture can be smoothly accessed based on the new offset after the jump identifier, therefore, during the picture writing process, these jump identifiers and new offsets should be avoided to be covered, therefore, the embodiment of the present application provides a picture writing method, please refer to Figure 12 , Figure 12 Another exemplary flowchart of the processing method of the aggregated picture provided by the embodiment of the present application, the method can also include:
[0138] S313: obtain the picture data to be written and the data length of the picture data to be written.
[0139] In the embodiment of the present application, the picture data encapsulated by the server can be saved in the picture buffer pool opened in the memory, and then written into the disk block, so that the encapsulated picture data can be obtained from the picture buffer pool, and the data length L thereof can be obtained.
[0140] In S314, the disk block to be written is obtained, and the data at each offset position consistent with the data length is read from the starting position of the write pointer of the disk block to be written.
[0141] In the embodiment of the present application, the disk block to be written is obtained from the write queue, that is, the embodiment of the present application scans all disk block information of the node at system startup, and hangs the disk block to different queues according to the deletion rate and the write pointer recorded in the header of the disk block.
[0142] In the optional embodiment, the principle of hanging different disk blocks into different queues in the embodiment of the present application is introduced below by taking one write queue, one recycle queue and one full queue as an example.
[0143] a) When the deletion rate of the disk block is greater than 50% and the write pointer is greater than 0X20000000, the disk block is hung into the recycle queue (that is, the disk block has been used for more than half, and the deleted data is also more than half).
[0144] b) When the write pointer of the disk block is 0X3FFF FFFF, it means that the disk block is full, and the disk block is hung into the full queue. In order to avoid that the remaining space of the disk block is too small to write the picture, the disk block can be hung into the full queue when the pointer is close to 0X3FFF FFFF, for example, the pointer is greater than 0X3F5C 28F4 (more than 99%).
[0145] c) The remaining disk blocks are hung into the write queue.
[0146] Therefore, before the processing method of the aggregated picture provided by the embodiment of the present application is executed, the deletion rate and the write pointer corresponding to each disk block can be scanned; if the deletion rate is greater than a preset deletion rate threshold and the write pointer is greater than a first threshold, the disk block corresponding to the deletion rate is put into the recycle queue; if the write pointer is greater than a second threshold, the disk block corresponding to the write pointer is put into the full queue; and the remaining disk blocks are put into the write queue.
[0147] After obtaining the write request, in order to improve the efficiency, multiple processing threads can be started, and the number of the processing threads is dynamically adjusted according to the number of business connections. When the processing thread is started, the disk block can be obtained from the write queue as the disk block to be written, and the write pointer of the processing thread can be set as the write pointer of the disk block to be written. If the number of acquisition of the disk block is considered to be reduced, the write module can obtain multiple disk blocks from the write queue at one time, and maintain the private write queue of the write module.
[0148] S315, if the data in the continuous offset positions is the jump identifier, record the offset position of the jump identifier and the offset position of the preset byte length after the jump identifier.
[0149] In the embodiment of the application, from the above implementation, it can be seen that the new offset is written after the jump identifier, and the preset byte length is the byte length of the new offset.
[0150] S315, start writing the picture data to be written from the writing pointer, and in the writing process, skip the offset position of the jump identifier and the offset position of the preset byte length after the jump identifier, until the picture data to be written is written.
[0151] In the embodiment of the application, the L length of data on the disk block is read from the writing pointer, and it is judged whether the L length of data contains continuous "0x25, 0x6A, 0x75, 0x6D, 0x70" (jump) strings, if yes, record the position and lengthen L to L+9 to continue reading. If there are multiple, record multiple times to write the picture data from the writing pointer, and when writing to the position recorded in 2, skip 9 bytes on the disk block to continue writing.
[0152] In the optional implementation, after a picture is written, if the writing pointer is greater than 0X3F5C28F4 at this time, the disk block is removed from the writing queue and transferred to the full queue. When the writing module writes the disk block obtained to be full, continue to obtain a new disk block from the writing queue.
[0153] Based on the same inventive concept, the embodiment of the application also provides a processing device for aggregated pictures, please refer to Figure 13 , Figure 13 The functional module diagram of the processing device for aggregated pictures provided by the embodiment of the application, the processing device 300 for aggregated pictures provided by the embodiment of the application can include: a scanning module 410 and a migration module 420.
[0154] The scanning module 410 is used for scanning the data in each offset position of the disk block in sequence with the scanning pointer of the disk block as the starting position.
[0155] The scanning module 410 is used for continuing to scan after updating the writing pointer based on the byte length of the deletion identifier and the current scanning pointer when the deletion identifier is scanned, until the scanning pointer reaches the tail of the disk block; and the deletion identifier indicates that the picture is marked for deletion.
[0156] The migration module 420 is configured to, when a head identifier or a migration identifier is scanned, migrate target picture data corresponding to the head identifier or the migration identifier to the write pointer, and after a jump identifier and an offset of the write pointer are written at an original offset of the target picture data, continue scanning until the scan pointer reaches the end of the disk block; the head identifier indicates that a picture is not migrated and not deleted; the migration identifier and the jump identifier indicate that a picture is migrated.
[0157] The scanning module 410 is configured to, when a jump identifier is scanned, continue scanning after the scan pointer is updated until the scan pointer reaches the end of the disk block.
[0158] In optional embodiments, the scanning module 410 and the migration module 420 can be executed cooperatively to implement respective technical effects. Figure 1
[0159] In optional embodiments, the migration module 420 is configured to, when a head identifier is scanned, migrate the target picture data to the write pointer; change the head identifier of the target picture data after migration to the migration identifier, and write an original offset after the migration identifier; change the head identifier at the original offset to a jump identifier, and continue scanning after the jump identifier and an offset of the write pointer are written, until the scan pointer reaches the end of the disk block.
[0160] In optional embodiments, the migration module 420 is configured to, when the migration identifier is scanned, read an original offset after the migration identifier; migrate the target picture data to the write pointer; based on the original offset, jump to the jump identifier corresponding to the target picture data, and continue scanning after the jump identifier and an offset of the write pointer are written, until the scan pointer reaches the end of the disk block.
[0161] In optional embodiments, the processing apparatus 300 for aggregating pictures can further include a reading module configured to, when a reading request is received, determine an original offset of a picture to be deleted based on an access address in the reading request; if the head identifier is obtained by reading from the original offset, read picture data consistent with a picture length according to the picture length after the head identifier as the picture to be accessed; if the jump identifier is obtained by reading from the original offset, read a new offset after the jump identifier, and read picture data consistent with the picture length as the picture to be accessed by jumping to the new offset; and if the deletion identifier is obtained by reading from the original offset, return a reading failure.
[0162] In an optional embodiment, the aggregated picture processing apparatus 300 can further comprise a deletion module configured to, when receiving a deletion request, determine an original offset of a picture to be deleted based on an access address in the deletion request; if reading from the original offset obtains the header identifier, change the header identifier to the deletion identifier; if reading from the original offset obtains the jump identifier, change the jump identifier to the deletion identifier, assign a new offset after the jump identifier as zero, and jump to a migration identifier of the picture to be deleted based on the new offset, and change the migration identifier of the picture to be deleted to the deletion identifier.
[0163] In an optional embodiment, the aggregated picture processing apparatus 300 can further comprise a writing module configured to obtain picture data to be written and a data length of the picture data to be written; obtain a disk block to be written, and read data at each offset position consistent with the data length from a starting position of a writing pointer of the disk block to be written; if the data at consecutive offset positions is the jump identifier, record the offset position of the jump identifier and an offset position of a preset byte length after the jump identifier; and write the picture data to be written from the writing pointer, and in the writing process, skip the offset position of the jump identifier and the offset position of the preset byte length after the jump identifier until the picture data to be written is written completely.
[0164] In an optional embodiment, the writing module is further configured to count all deletion identifiers on the disk block; determine a deletion rate of the disk block based on a picture length of picture data corresponding to each deletion identifier and a total storage length of the disk block; and write the deletion rate to a header of the disk block.
[0165] The aggregated picture processing apparatus 300 in the embodiment of the present application can be stored in an operating system (OS) of an electronic device 400 in the form of software or firmware.
[0166] Please refer to Figure 14 , Figure 14 The electronic device 400 is used to execute the aggregated picture processing method provided by the embodiment of the present application, and please refer to Figure 14 The electronic device 400 can be a server in Figure 1 , or can be a device in which the server 12 and the client 10 are deployed together.
[0167] The electronic device 400 includes a memory 401, a processor 402, and a communication interface 403, which are electrically connected to each other directly or indirectly to realize the transmission or interaction of data. For example, these elements can be electrically connected to each other through one or more communication buses or signal lines.
[0168] The memory 401 can be used to store software programs and modules, such as program instructions / modules corresponding to the processing apparatus 300 for aggregating pictures provided by the embodiments of the present application, which can be stored in the memory 401 in the form of software or firmware or solidified in the operating system (OS) of the electronic device 400. The processor 402 performs various functional applications and data processing by executing the software programs and modules stored in the memory 401. The communication interface 403 can be used for signaling or data communication with other node devices.
[0169] The memory 401 can be, but is not limited to, a random access memory (RAM), a read only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), etc.
[0170] The processor 402 can be an integrated circuit chip with signal processing capability. The processor 402 can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
[0171] It can be understood that, Figure 14 The structure shown is only schematic, and the electronic device 400 can further include more or fewer components than those shown Figure 14more or less components than those shown in the figures, or configurations of the components with different connections, or more distributed or less distributed configurations. Figure 14 Figure 14 The components shown in the figures can be implemented in hardware, software, or a combination thereof.
[0172] Based on the above embodiments, the present application further provides a storage medium, wherein the storage medium stores a computer program, and the computer program is executed by a computer to enable the computer to perform the processing method of the aggregated picture provided in the above embodiments.
[0173] Based on the above embodiments, the present application further provides a computer program, which, when running on a computer, enables the computer to perform the processing method of the aggregated picture provided in the above embodiments.
[0174] Based on the above embodiments, the present application further provides a chip, which is used to read a computer program stored in a memory, and is used to perform the processing method of the aggregated picture provided in the above embodiments.
[0175] The present application further provides a computer program product, which includes instructions, and when the instructions are run on a computer, the computer is enabled to perform the processing method of the aggregated picture provided in the above embodiments.
[0176] The embodiments of the present application are described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, and the combination of the flows and / or blocks in the flowcharts and / or block diagrams can be implemented by instructions. The instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing apparatus to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing apparatus generate a means for implementing the functions specified in the flowcharts and / or block diagrams. Figure 1 The functions specified in a flow or multiple flows and / or blocks Figure 1 The functions specified in a flow or multiple flows and / or blocks
[0177] The computer program instructions can also be stored in a computer readable memory capable of directing a computer or other programmable data processing apparatus to work in a specific manner, so that the instructions stored in the computer readable memory produce a manufactured product including instruction means, which implements the functions specified in the flowcharts and / or block diagrams. Figure 1 The functions specified in a flow or multiple flows and / or blocks Figure 1 The functions specified in a flow or multiple flows and / or blocks
[0178] These computer program instructions can also be loaded into a computer or other programmable data processing devices, so that a series of operational steps are generated to realize the computer-implemented processes in the computer or other programmable devices, and the instructions executed in the computer or other programmable devices provide the steps for realizing the functions specified in the flowchart Figure 1 one flow or multiple flows and / or the functions specified in the block Figure 1 one flow or multiple flows and / or the functions specified in the block
[0179] The above merely describes the specific embodiments of the present application, but the protection scope of the present application is not limited thereto, and any changes or replacements easily conceived by those skilled in the art within the technical scope disclosed by the present application shall be covered within the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.
Claims
1. A method of processing a plurality of pictures, characterized by, The method comprises: starting from a scan pointer of a disk block, sequentially scanning data at each offset position of the disk block; when a deletion identifier is scanned, based on the byte length of the deletion identifier and the current scan pointer, updating a write pointer and then continuing scanning until the scan pointer reaches the end of the disk block; the deletion identifier represents that a picture is marked for deletion; when a header identifier or a migration identifier is scanned, migrating target picture data corresponding to the header identifier or the migration identifier to the write pointer, and then continuing scanning after writing a jump identifier and the offset of the write pointer at the original offset of the target picture data until the scan pointer reaches the end of the disk block, including: when a migration identifier is scanned, reading the original offset after the migration identifier; migrating the target picture data to the write pointer; based on the original offset, jumping to the jump identifier corresponding to the target picture data, and then continuing scanning after writing the offset of the write pointer after the jump identifier until the scan pointer reaches the end of the disk block; the header identifier represents that a picture is not migrated and not deleted; the migration identifier and the jump identifier represent that a picture is migrated; when a jump identifier is scanned, updating the scan pointer and then continuing scanning until the scan pointer reaches the end of the disk block; when a deletion request is received, based on the access address in the deletion request, determining the original offset of a picture to be deleted; if the header identifier is obtained by reading from the original offset, the header identifier is changed to the deletion identifier; if the jump identifier is obtained by reading from the original offset, the jump identifier is changed to the deletion identifier, the new offset after the jump identifier is assigned as zero, and based on the new offset, the migration identifier of the picture to be deleted is jumped to and changed to the deletion identifier; all deletion identifiers on the disk block are counted; based on the picture length of the picture data corresponding to each deletion identifier and the total storage length of the disk block, the deletion rate of the disk block is determined; and the deletion rate is written to the header of the disk block.
2. The method of processing a polygraphic picture according to claim 1, characterized in that, when a header identifier is scanned, migrating target picture data corresponding to the header identifier, and then continuing scanning after writing a jump identifier and the offset of the write pointer at the original offset of the target picture data until the scan pointer reaches the end of the disk block, including: when a header identifier is scanned, migrating the target picture data to the write pointer; changing the header identifier of the migrated target picture data to the migration identifier, and then writing the original offset after the migration identifier; changing the header identifier at the original offset to the jump identifier, and then continuing scanning after writing the offset of the write pointer after the jump identifier until the scan pointer reaches the end of the disk block.
3. The method of processing a polygraphic picture according to claim 1, characterized in that, The method further comprises: when a read request is received, based on the access address in the read request, determining the original offset of a picture to be accessed; If the head identifier is obtained by reading from the original offset, then according to a picture length after the head identifier, picture data consistent with the picture length is read as the to-be-accessed picture; If the jump identifier is obtained by reading from the original offset, then a new offset after the jump identifier is read, and picture data consistent with the picture length is read as the to-be-accessed picture by jumping to the new offset; If the deletion identifier is obtained by reading from the original offset, then reading fails is returned.
4. The method of processing a polygraphic picture according to claim 1, characterized in that, The method further comprises: acquiring picture data to be written and a data length of the picture data to be written; acquiring a disk block to be written, and reading data at each offset position consistent with the data length from a starting position of a write pointer of the disk block to be written; if the data at the continuous offset positions is the jump identifier, then an offset position of the jump identifier and an offset position of a preset byte length after the jump identifier are recorded; the picture data to be written is written from the write pointer, and in the writing process, the offset position of the jump identifier and the offset position of the preset byte length after the jump identifier are skipped until the picture data to be written is completely written.
5. An apparatus for processing a plurality of pictures, characterized by comprises: a scanning module configured to scan data at each offset position of a disk block from a starting position of a scan pointer of the disk block; the scanning module is configured to, when a deletion identifier is scanned, continue scanning after updating a write pointer based on a byte length of the deletion identifier and the scan pointer, until the scan pointer reaches a tail of the disk block; the deletion identifier indicates that a picture is marked for deletion; a migration module configured to, when a head identifier or a migration identifier is scanned, migrate target picture data corresponding to the head identifier or the migration identifier to the write pointer, and continue scanning after writing a jump identifier at an original offset of the target picture data and an offset of the write pointer, until the scan pointer reaches the tail of the disk block, including: when a migration identifier is scanned, reading an original offset after the migration identifier; migrating the target picture data to the write pointer; jumping to the jump identifier corresponding to the target picture data based on the original offset, and continuing to scan after writing the offset of the write pointer after the jump identifier, until the scan pointer reaches the tail of the disk block; the head identifier indicates that a picture is not migrated and not deleted; the migration identifier and the jump identifier indicate that a picture is migrated; the scanning module is configured to, when a jump identifier is scanned, continue scanning after updating the scan pointer, until the scan pointer reaches the tail of the disk block; The deleting module is configured to, when receiving a deleting request, determine an original offset of a picture to be deleted based on an access address in the deleting request; if a head identifier is obtained by reading from the original offset, change the head identifier to the deleting identifier; if a jump identifier is obtained by reading from the original offset, change the jump identifier to the deleting identifier, assign a new offset after the jump identifier as zero, jump to a migration identifier of the picture to be deleted based on the new offset, and change the migration identifier of the picture to be deleted to the deleting identifier; and the writing module is configured to count all deleting identifiers on the disk block, determine a deleting rate of the disk block based on a picture length of picture data corresponding to each deleting identifier and a total storage length of the disk block, and write the deleting rate to a head of the disk block.
6. An electronic device, comprising: The computer program is executed by the processor to implement the method of any one of claims 1 to 4.
7. A readable storage medium, having stored thereon a computer program, characterized in that, The computer program is executed by the processor to implement the method of any one of claims 1 to 4.
Citation Information
Patent Citations
Aggregate big file deletion method, apparatus and device, and computer storage medium
CN107704203A
Catalog that stores file system metadata in an optimized manner
US20100325181A1