US2022147255A1PendingUtilityA1

Method and apparatus for compressing data of storage system, device, and readable storage medium

59
Assignee: HUAWEI TECH CO LTDPriority: Jul 22, 2019Filed: Jan 20, 2022Published: May 12, 2022
Est. expiryJul 22, 2039(~13 yrs left)· nominal 20-yr term from priority
G06F 3/0674G06F 3/0673G06F 3/0608G06F 3/0641H03M 7/3091H03M 7/30G06F 3/0676
59
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

In a method of storing data block, a storage device has stored a plurality of data block groups, each data block group having a common part that is contained in another data block in that group. For a target block to be stored, the storage device selects from the data block groups a target data block group has one data block whose common part is identical to a part of the target data block. The storage device then saves the target block by storing a target reference block of the target data block group and differential data between the target data block and the target reference block.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A method of storing data block performed by a storage device, comprising:
 storing data block groups, wherein each data block group of the data block groups has a plurality of data blocks, and each data block of said each data block group has a common part identical to a part of another data blocks of said each data block group;   selecting from the data block groups a target data block group, wherein one data block in the target data block group has a common part identical to a part of the target data block; and   saving the target block by storing a target reference block of the target data block group and differential data between the target data block and the target reference block.   
     
     
         2 . The method according to  claim 1 , wherein the step of saving the data block groups comprises:
 storing, for each data block group of the data block groups, a reference block and differential data between each data block in the data block group and the reference block; wherein each data block group comprises a reference block.   
     
     
         3 . The method according to  claim 2 , furthering comprising:
 continuously storing all data of each data block group in storage address.   
     
     
         4 . The method according to  claim 1 , furthering comprising:
 deduplicating data blocks in the storage system to obtain data blocks of the data block groups, wherein data blocks obtained after deduplicating are not the same.   
     
     
         5 . The method according to  claim 1 , furthering comprising:
 comparing, fingerprints of a part of data blocks of data block groups and fingerprints of parts of the target data block for selecting.   
     
     
         6 . The method according to  claim 1 , furthering comprising:
 comparing, fingerprints of a common parts and fingerprints of parts of the target data block, wherein all data blocks in each data block groups have a common part.   
     
     
         7 . The method according to  claim 1 , wherein the comparing step comprises:
 obtaining the target data block by the reference block and the differential data.   
     
     
         8 . A storage device, comprising:
 a memory storing executable instructions; and   a processor configured to execute the executable instructions to:   save data block groups, wherein each data block group of the data block groups has a plurality of data blocks, each data block of said each data block group has a common part identical to a part of another data blocks of said each data block group;   select from the data block groups a target data block group, wherein one data block in the target data block group has a common part identical to a part of the target data block; and   save the target block by storing a target reference block of the target data block group and differential data between the target data block and the target reference block.   
     
     
         9 . The storage device according to  claim 8 , wherein the processor is configured to save the data block groups by storing, for each data block group of the data block groups, a reference block and differential data between each data block in the data block group and the reference block; wherein each data block group comprises a reference block. 
     
     
         10 . The storage device according to  claim 9 , wherein the processor is configured to further execute the executable instructions to:
 continuously store all data of each data block group in storage address.   
     
     
         11 . The storage device according to  claim 8 , wherein the processor is configured to further execute the executable instructions to:
 deduplicate data blocks to obtain data blocks of the data block groups, wherein data blocks obtained after deduplicating are not the same.   
     
     
         12 . The storage device according to  claim 8 , wherein the processor is configured to:
 compare fingerprints of a part of data blocks of data block groups and fingerprints of parts of the target data block.   
     
     
         13 . The storage device according to  claim 8 , wherein the processor is configured to:
 compare fingerprints of a common parts and fingerprints of parts of the target data block, wherein all data blocks in each data block groups have a common part.   
     
     
         14 . The storage device according to  claim 8 , wherein the processor is configured to:
 obtain the target data block by the reference block and the differential data.   
     
     
         15 . A storage device, comprising:
 a memory storing executable instructions; and   a processor configured to execute the executable instructions to:   determine data blocks in a plurality of data blocks, if one data block has a common part identical to a part of another data blocks;   select a group of data blocks from the plurality of data blocks, wherein each data block of said each data block group has a common part identical to a part of another data blocks of said each data block group; and   save the group of data blocks by storing a reference block and differential data between each data block in the group and the reference block.   
     
     
         16 . The storage device according to  claim 15 , wherein the processor is configured to:
 compare fingerprints between different data blocks of the plurality of data blocks, wherein each said data block of the plurality of data has at least one fingerprints.   
     
     
         17 . The storage device according to  claim 15 , wherein the processor is configured to further execute the executable instructions to:
 continuously store all data of the data block group in storage address.   
     
     
         18 . The storage device according to  claim 15 , furthering comprising:
 deduplicate data blocks in the storage device to obtain the plurality of data blocks.   
     
     
         19 . The storage device according to  claim 15 , the selecting step comprising:
 select a group of data blocks from a number of data blocks, according to fingerprint of part of each data block in the number of data blocks.   
     
     
         20 . The storage device according to  claim 15 , wherein the processor is configured to:
 select the group of data blocks from the plurality of data blocks according to all data blocks in each data block groups have a common part.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.