CN107506153B - 一种数据压缩方法、数据解压方法及相关*** - Google Patents
一种数据压缩方法、数据解压方法及相关*** Download PDFInfo
- Publication number
- CN107506153B CN107506153B CN201710882469.6A CN201710882469A CN107506153B CN 107506153 B CN107506153 B CN 107506153B CN 201710882469 A CN201710882469 A CN 201710882469A CN 107506153 B CN107506153 B CN 107506153B
- Authority
- CN
- China
- Prior art keywords
- data
- data blocks
- block
- blocks
- adjacent
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
- G06F3/0641—De-duplication techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明实施例公开了一种数据压缩方法、数据解压方法及相关***,用于最大可能的消除相似数据间的冗余,提高数据的压缩率。本发明实施例方法包括:将原数据分为多个数据块;确认多个数据块中的相同数据块;删除重复的相同数据块,使得原数据中保留一个所述相同数据块;将相同数据块的相邻数据块迁移重组,生成重组数据;对重组数据进行压缩,得到压缩数据。本发明还提供了一种数据解压的方法及相关***,用于配合数据压缩方法,提高数据的压缩率。
Description
技术领域
本发明涉及计算机数据处理技术领域,尤其涉及一种数据压缩方法、数据解压方法及相关***。
背景技术
数据压缩是指在不丢失有用信息的前提下,缩减数据量以减少存储空间,提高其传输、存储和处理效率,或按照一定的算法对数据进行重新组织,减少数据的冗余和存储的空间的一种技术方法。
目前的数据压缩技术主要分为有损压缩和无损压缩,现有的无损压缩技术大多由基于字典编码技术LZ77和LZ78发展而来。字典编码技术主要采用一种基于“滑动窗口”的缓存技术,将当前字符序列与滑动窗口内缓存的字符序列进行匹配,如果重复,则用一个相对短的编码来表示,从而实现字符串级的冗余消除。
而现有的无损压缩技术中滑动窗口的大小,主要限制了冗余数据的查找,一方面,滑动窗口越大意味着越容易找到冗余数据,从而可以更多地消除冗余,但随着滑动窗口的增大,冗余字符串的匹配查找时间也呈指数增长,因此大多数压缩算法限制了滑动窗口的大小,例如bzip2的最大滑动窗口为900KB;另一方面,滑动窗口太小,不同窗口内的冗余数据因为相距较远而无法消除,存储***中仍存在大量的冗余数据,同时,传统压缩多是字节级/字符串级,压缩粒度较小,字节级/字符串级的匹配操作耗时,速度较慢,不能满足海量数据存储***的需要。
发明内容
本发明实施例提供了一种数据压缩方法、数据解压方法及相关***,用于在原数据分为多个数据块后,先删除重复的数据块,再根据冗余数据的局部性原理,将重复数据块的相邻数据块视为相似数据块进行迁移重组,来最大可能的消除冗余,从而提高数据的压缩率。
本发明一方面提供了一种数据压缩方法,包括:
将原数据分为多个数据块;
确认所述多个数据块中的相同数据块;
删除重复的相同数据块,使得所述原数据中保留一个所述相同数据块;
将所述相同数据块的相邻数据块迁移重组,生成重组数据;
对所述重组数据进行压缩,得到压缩数据。
可选的,在所述将原数据分为多个数据块之后,所述确认所述多个数据块中的相同数据块之前,该方法还包括:
记录所述多个数据块的第一顺序、第一偏移及块长,生成原文件谱。
可选的,在所述将所述相同数据块的相邻数据块迁移重组,生成重组数据之后,该方法还包括:
记录重组数据中多个数据块的第二顺序、第二偏移及块长,生成重组文件谱;
根据重组文件谱中多个数据块的第二顺序,将原文件谱中的第一偏移更新为第三偏移,生成新原文件谱;
将新原文件谱进行压缩,得到压缩文件谱。
可选的,确认多个数据块中的相同数据块,包括:
通过SHA-1算法或MD5算法确认多个数据块中的相同数据块。
本发明另一方面提供了一种数据解压方法,包括:
将压缩数据和压缩文件谱进行解压,得到重组数据和新原文件谱;
根据新原文件谱记录的多个数据块的第一顺序、第三偏移及块长,依次从重组数据中读取多个数据块;
将多个数据块,根据新原文件谱中记录的多个数据块的第一顺序依次写入,得到原数据。
本发明还提供了一种数据压缩***,包括:
分块单元,用于将原数据分为多个数据块;
确认单元,用于确认多个数据块中的相同数据块;
删除单元,用于删除重复的相同数据块,使得原数据中保留一个相同数据块;
重组单元,用于将相同数据块的相邻数据块迁移重组,生成重组数据;
压缩单元,用于对重组数据进行压缩,得到压缩数据。
本发明还提供了一种数据解压***,包括:
解压单元,用于将压缩数据和压缩文件谱进行解压,得到重组数据和新原文件谱;
读取单元,用于根据新原文件谱记录的多个数据块的第一顺序、第三偏移及块长,依次从重组数据中读取多个数据块;
写入单元,用于将多个数据块,根据新原文件谱中记录的多个数据块的第一顺序依次写入,得到原数据。
本发明还提供了一种计算机装置,包括处理器,该处理器在执行存储于存储器上的计算机程序时,用于实现如下步骤:
将原数据分为多个数据块;
确认多个数据块中的相同数据块;
删除重复的相同数据块,使得原数据中保留一个相同数据块;
将相同数据块的相邻数据块迁移重组,生成重组数据;
对重组数据进行压缩,得到压缩数据。
本发明还提供了一种计算机装置,包括处理器,该处理器在执行存储于存储器上的计算机程序时,用于实现如下步骤:
将压缩数据和压缩文件谱进行解压,得到重组数据和新原文件谱;
根据新原文件谱记录的多个数据块的第一顺序、第三偏移及块长,依次从重组数据中读取多个数据块;
将多个数据块,根据新原文件谱中记录的多个数据块的第一顺序依次写入,得到原数据。
本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,用于实现如下步骤:
将原数据分为多个数据块;
确认多个数据块中的相同数据块;
删除重复的相同数据块,使得原数据中保留一个相同数据块;
将相同数据块的相邻数据块迁移重组,生成重组数据;
对重组数据进行压缩,得到压缩数据。
本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,用于实现如下步骤:
将压缩数据和压缩文件谱进行解压,得到重组数据和新原文件谱;
根据新原文件谱记录的多个数据块的第一顺序、第三偏移及块长,依次从重组数据中读取多个数据块;
将多个数据块,根据新原文件谱中记录的多个数据块的第一顺序依次写入,得到原数据。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明中,将原数据分为多个数据块,确认多个数据块中的重复数据块后,对重复数据块执行删除操作,同时,基于冗余的局部性原理,将相同数据块的相邻数据块视为相似数据块,并对相同数据块的相邻数据块迁移重组,使得相同数据块的相邻数据块在物理位置上相邻,生成重组数据,进而对重组数据进行压缩操作,得到压缩数据,从而最大可能的消除冗余,提高数据的压缩率。
附图说明
图1为数据压缩方法的过程示意图;
图2为本发明实施例中一种数据压缩方法的一个实施例示意图;
图3为本发明实施例中一种数据压缩方法的另一个实施例示意图;
图4为文件谱的组成结构示意图;
图5为数据重组的过程示意图;
图6为本发明实施例中数据解压方法的一个实施例示意图;
图7为本发明实施例中数据压缩***的一个实施例示意图;
图8为本发明实施例中数据压缩***的另一个实施例示意图;
图9为本发明实施例中数据解压***的一个实施例示意图。
具体实施方式
本发明实施例提供了一种数据压缩方法、数据解压方法及相关***,用于在原数据分为多个数据块后,先删除重复的数据块,再根据冗余数据的局部性原理,将重复数据块的相邻数据块视为相似数据块进行迁移重组,来最大可能的消除冗余,从而提高数据的压缩率。
为便于理解,先对文中的专业术语解释如下:
数据压缩:数据压缩是一种主流的冗余数据消除技术,主要通过编码的方式消除冗余数据信息,即在保证原有数据信息不丢失的前提下,将原始内容进行转换,对于重复的字节序列用更少字节数的编码表示,从而达到消除部分冗余数据的目的,随着电子数字信息的不断增长,数据压缩技术逐渐发展为目前的无损压缩技术和有损压缩技术等。
数据去重:数据去重指将重复数据删除,只保留唯一数据副本,从而减少数据存储开销。数据去重采用了数据块或文件级的压缩粒度,粒度更大同时冗余消除速度更快,更适用于海量数据存储。
文件谱:文件谱记录文件中数据块的顺序以及各个数据块对应的元数据(偏移,长度等),而不记录数据内容本身,主要用于恢复过程中读取对应数据块并构成原文件。
为便于理解,图1给出了数据压缩方法的过程示意图,下面结合图1,描述本发明中的一种数据压缩方法,请参阅图2,本发明实施例中一种数据压缩方法的一个实施例,包括:
201、将原数据分为多个数据块;
可以理解的是,数据压缩是在保证数据不丢失的情形下,尽可能地消除数据冗余,以达到缩小存储空间,加快数据传输的目的。
本发明是基于数据去重及数据的局部性冗余原理,先删除原数据中的重复部分,只保留一份数据副本,然后消除数据中相似部分的冗余数据,故需将原数据分为多个数据块。
具体的,数据分块是采用分块算法将原数据划分成多个数据块。平均分块的粒度为8KB左右(改分块粒度也可以根据需要设置为4KB或者16KB),分块算法可以采用多种算法进行,如Rabin、MAXP等分块算法。
202、确认多个数据块中的相同数据块;
数据压缩***在将原数据分为多个数据块后,进一步确认多个数据块中的相同数据块,以删除相同部分的数据块,保留唯一数据副本,即数据去重。
具体的,数据压缩***可以通过多种方法确认多个数据块中的相同数据块,如SHA-1算法或MD5算法,因SHA-1算法是将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值即为哈希值,哈希值是一段数据唯一且紧凑的数值表示形式,如果散列一段明文且只更改该段落的一个字母,随后的哈希值都将产生不同的值,故要找到散列为同一值的两个不同输入,在计算上是不可能的,所以通过SHA-1算法确认的某一散列明文的哈希值可以视为该散列明文的“指纹”,而MD5算法的原理与SHA-1算法的原理相同。
所以本实施例可以通过SHA-1算法或MD5算法确认每个数据块的“指纹”,并以该指纹为索引去查询并确认多个数据块中的相同数据块。
203、删除重复的相同数据块,使得原数据中保留一个相同数据块;
数据压缩***确认了多个数据块中的相同数据后,对相同数据块进行删除操作,使得原数据中只保留相同数据块中的一个数据块副本。
具体的,如图1所示,若原数据中的多个数据块经过SHA-1算法后,计算存在有两个相同的数据块X,则删除原数据中的一个数据块X,使得原数据中只保留相同数据块的一个数据块副本。
204、将相同数据块的相邻数据块迁移重组,生成重组数据;
在删除多个数据块中的相同数据块后,根据局部性冗余原理,将相同数据块的相邻数据块视为相似数据块,将该相似数据块迁移重组,以生成重组数据。
具体的,如图1所示,在多个数据块中经确认存在两个相同的数据块X,则删除一个数据块X,同时基于冗余数据的局部性,分别将数据块X的相邻数据块A1、B1,A2,B2,进行迁移重组,使得相同数据块X左侧的数据块A1、A2在物理位置上相邻,相同数据块X右侧的数据块B1、B2在物理位置上相邻,生成重组数据,从而使得相似数据块位于同一压缩窗口内,最大可能的消除相似块间的冗余。
205、对重组数据进行压缩,得到压缩数据。
数据压缩***在生成重组数据后,采用传统的压缩方法,对该重组数据进行压缩,得到压缩数据。
具体的,基于冗余数据的局部性,将相同数据块的相邻数据块视为相似数据块,使得相似数据块迁移重组,位于同一压缩窗口内,从而最大可能的消除相似块间的冗余。其中,本实施例中具体的压缩算法和压缩窗口不做具体限制,但压缩窗口至少数倍于数据块的大小,
本发明中,将原数据分为多个数据块,确认多个数据块中的重复数据块后,对重复数据块执行删除操作,同时,基于冗余的局部性原理,将相同数据块的相邻数据块视为相似数据块,并对相同数据块的相邻数据块迁移重组,使得相同数据块的相邻数据块在物理位置上相邻,生成重组数据,进而对重组数据进行压缩操作,得到压缩数据,从而最大可能的消除冗余,提高数据的压缩率。
其次,本发明采用块级去重粒度,相比于传统的字符或字符串级的冗余匹配度,提高了冗余的去除速度,提高了数据的压缩速度,消除了更多的冗余,实现了压缩量及压缩吞吐量的提升。
基于图2的实施例,下面详细描述本发明中的数据压缩方法,请参阅图3,本发明实施例中数据压缩方法的另一个实施例,包括:
301、将原数据分为多个数据块;
可以理解的是,本发明是基于块级去重的原理,先删除原数据中的相同数据块,故需先将原数据分为多个数据块。
具体的,数据分块是采用分块算法将原数据划分成多个数据块。其中,可以根据分块的粒度(4K、8K、16K等)将数据分为不同大小的数据块。实际应用中,可以采用不同的分块算法对原数据进行分块,如Rabin、MAXP等分块算法。
具体的Rabin、MAXP分块算法的内容在现有技术中都有详细描述,此处不再赘述,需要说明的是,本实施例中的分块算法包括但不限于Rabin、MAXP算法,还可以包括:定长分块(fixed-size partition)及CDC切分(content-defined chunking),此处对分块算法不做具体限制。
302、记录多个数据块的第一顺序、第一偏移及块长,生成原文件谱;
数据压缩***在将原数据分为多个数据块后,为了后期压缩数据的恢复,需要在将原数据分块后,记录多个数据块的第一顺序、第一偏移及块长。其中,第一顺序为多个数据块在原数据中的原始顺序,第一偏移为多个数据块在原数据中的原始位置,块长为步骤301中,每个数据块的大小。
具体的,如图1所示,原数据中多个数据块的顺序为A1、X、B1、…A2、X、B2,假如各数据块的块长分别为8K,则原文件谱中记录的第一顺序即为A1、X、B1、…A2、X、B2,则A1、X、B1对应的偏移为0K,8K,16K。具体的文件谱的构成可以参照图4,图4为一个名为TEST文件的原文件谱示例。文件谱中主要包括文件大小、文件名长、文件名的文件信息以及数据块个数,各个数据块的偏移和块长的数据块元数据。
303、通过SHA-1算法或MD5算法确认多个数据块中的相同数据块;
数据压缩***在将原数据分为多个数据块,且生成原文件谱后,进一步确认多个数据块中的相同数据块。
具体的,数据压缩***可以通过SHA-1算法或MD5算法确认多个数据块中的相同数据块,因SHA-1算法是将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值即为哈希值,哈希值是一段数据唯一且紧凑的数值表示形式,如果散列一段明文且只更改该段落的一个字母,随后的哈希值都将产生不同的值,故要找到散列为同一值的两个不同输入,在计算上是不可能的,所以通过SHA-1算法确认的某一散列明文的哈希值可以视为该散列明文的“指纹”,而MD5算法的原理与SHA-1算法的原理相同。
所以本实施例可以通过SHA-1算法或MD5算法确认每个数据块的“指纹”,并以该指纹为索引去查询并确认多个数据块中的相同数据块。
304、删除重复的相同数据块,使得原数据中保留一个相同数据块;
数据压缩***确认了多个数据块中的相同数据块后,进一步删除重复的相同数据块,使得原数据中保留一个相同的数据块。
具体的,如图1所示,数据压缩***根据SHA-1算法或MD5算法确认了相同的数据块X后,删除重复的数据块X,使得原数据中只保留一个相同的数据块X,因为本发明采用块级去重的方法,相较于传统字符或字符串级的冗余匹配而言,消除粒度更大,所以加快了冗余的消除速度,同时也提高了数据的压缩比率。
305、将相同数据块的相邻数据块迁移重组,生成重组数据;
数据压缩***在删除重复的相同数据块后,将相同数据块的相邻数据块视为相似数据块,将该相似的数据块迁移重组,生成重组数据块。
具体的重组过程可以参照图5,数据压缩***在确认相同的数据块X后,删除重复的数据块X,同时基于冗余的局部性,将数据块X的相邻数据块A1、B1、A2、B2视为相似数据块,分别将数据块X的左侧数据块A1、A2迁移组合,将数据块X的右侧数据块B1、B2迁移组合,从而生成重组数据。
306、记录重组数据中多个数据块的第二顺序、第二偏移及块长,生成重组文件谱;
数据压缩***,在确认相同数据块后,对相同数据块执行删除操作,并在将与相同数据块相邻的数据块迁移重组的过程中,通过文件链表的形式记录数据块重组后,多个数据块形成的第二顺序、第二偏移及块长,从而生成重组文件谱。
具体的,假如原文件谱中每个数据块的块长为8K,根据原文件谱的记录,原数据中数据块的第一顺序为:A1、X、B1…A2、X、B2,其中A1、X、B1的偏移分别为0K、8K、16K,则在数据重组的过程中,生成的重组文件谱中记录的数据块的第二顺序为:A1、A2、X、B1、B2、…,其中A1、X、B1的偏移分别为0K、16K、24K。
307、根据重组文件谱中多个数据块的第二顺序,将原文件谱中的第一偏移更新为第三偏移,生成新原文件谱;
数据压缩***,在数据重组的过程中,生成重组文件谱后,为了后期数据的恢复,需要将原文件谱中每个数据块的第一偏移更新为第三偏移。
具体的,因为后期在数据恢复的过程中,是根据原文件谱中记录的多个数据块的顺序及偏移,从重组数据中分别读取对应的数据块,而重组数据在数据块重组的过程中,多个数据块的顺序及偏移都发生了改变,所以要根据重组数据的重组文件谱,对原文件谱中记录的多个数据块的偏移做更新修正,如步骤306所述,原文件谱中记录的数据块的第一顺序为A1、X、B1…A2、X、B2,其中A1、X、B1的偏移分别为0K、8K、16K,则在数据重组的过程中,生成的重组文件谱中记录的数据块的第二顺序为:A1、A2、X、B1、B2、…,其中A1、X、B1的偏移分别为0K、16K、24K。
所以后期在根据重组数据和原文件谱恢复原数据时,必须对原文件谱中记录的每个数据块的偏移,做更新修正,分别将原文件中A1、X、B1的偏移量,由0K、8K、16K更新为0K、16K、24K。为便于描述,将偏移量更新后的原文件谱记为新原文件谱。
308、将新原文件谱进行压缩,得到压缩文件谱;
数据压缩***在生成新原文件谱后,将新原文件谱采用传统压缩方法进行压缩,得到压缩文件谱。
需要说明的是,因为新原文件谱和重组数据一起组合运用于后期的原数据恢复,所以在实际应用中将压缩文件谱和压缩后的重组数据进行关联存储,以便于后期的原数据恢复。
309、对重组数据进行压缩,得到压缩数据。
数据压缩***,在得到重组数据后,将相似的数据块放于同一压缩窗口内进行压缩,从而最大可能的消除冗余,提高数据的压缩率。
需要说明的是,步骤309也可以在步骤308之前执行,即步骤308和步骤309之间没有顺序限制,而且实际中为了方便操作,步骤308也可以和步骤309合并执行,即同时将新原文件谱和重组数据进行压缩,得到压缩数据和压缩文件谱。
本发明中,将原数据分为多个数据块,确认多个数据块中的重复数据块后,对重复数据块执行删除操作,同时,基于冗余的局部性原理,将相同数据块的相邻数据块视为相似数据块,并对相同数据块的相邻数据块迁移重组,使得相同数据块的相邻数据块在物理位置上相邻,生成重组数据,进而对重组数据进行压缩操作,得到压缩数据,从而最大可能的消除冗余,提高数据的压缩率。
其次,本发明采用块级去重粒度,相比于传统的字符或字符串级的冗余匹配度,提高了冗余的去除速度,提高了数据的压缩速度,消除了更多的冗余,实现了压缩量及压缩吞吐量的提升。
上面描述了本发明中的数据压缩方法,下面来描述本发明中的数据解压方法,请参阅图6,本发明实施例中的数据解压方法的一个实施例,包括:
601、将压缩数据和压缩文件谱进行解压,得到重组数据和新原文件谱;
可以理解的是,数据解压方法和数据压缩方法需要组合使用,以用于后期对原数据的查看,且数据解压为数据压缩的逆向过程。
对应于数据压缩方法,数据解压***对压缩数据和压缩文件谱进行解压,得到重组数据和新原文件谱。
602、根据新原文件谱记录的多个数据块的第一顺序、第三偏移及块长,依次从重组数据中读取多个数据块;
数据解压***得到重组数据和新原文件谱后,根据新原文件谱中记录的多个数据块的第一顺序,第三偏移及块长,分别从重组数据中依次读取出对应的数据块。
具体的,如图5所示,在得到重组数据和新原文件谱后,依照新原文件谱中记录的多个数据块的第一顺序A1、X、B1…A2、X、B2,偏移及块长,分别从重组数据中,依次读取出数据块A1、X、B1…A2、X、B2。
603、将多个数据块,根据新原文件谱中记录的多个数据块的第一顺序依次写入,得到原数据。
数据解压***从重组数据中得到数据块A1、X、B1…A2、X、B2后,再依据新原文件谱中记录的第一顺序,将各数据块依次写入,即可恢复到原数据A1、X、B1…A2、X、B2。
进一步,若数据存储在磁盘中,因为磁盘数据是顺序写入的,而按照原数据记录的数据块的顺序,读取重组数据中各数据块的内容时,是非顺序读取的,所以会造成磁盘一定的I/O开销,从而缩短磁盘的寿命,但若将磁盘改为SSD盘,因SSD盘支持随机读出及随机写入,即可解决磁盘I/O开销大的问题。
本发明中,对应数据压缩的方法,解压压缩数据及压缩文件谱,分别得到重组数据和新原文件谱,根据新原文件谱记录的多个数据块的顺序、偏移及块长,分别从重组数据中读取多个数据块,再依次写入多个数据块,即可恢复原数据。
上面描述了本发明中的数据压缩方法及数据解压方法,下面来描述本发明中数据压缩***,请参阅图7,本发明中数据压缩***的一个实施例,包括:
分块单元701,用于将原数据分为多个数据块;
确认单元702,用于确认多个数据块中的相同数据块;
删除单元703,用于删除重复的相同数据块,使得原数据中保留一个相同数据块;
重组单元704,用于将相同数据块的相邻数据块迁移重组,生成重组数据;
压缩单元705,用于对重组数据进行压缩,得到压缩数据。
需要说明的是,本实施例中各单元的作用与图2所述实施例中数据压缩***的作用类似,此处不再赘述。
本发明中,通过分块单元701将原数据分为多个数据块,通过确认单元702确认多个数据块中的重复数据块后,通过删除单元703对重复数据块执行删除操作,同时,基于冗余的局部性原理,将相同数据块的相邻数据块视为相似数据块,并对相同数据块的相邻数据块迁移重组,使得相同数据块的相邻数据块在物理位置上相邻,生成重组数据,进而通过压缩单元705对重组数据进行压缩操作,得到压缩数据,从而最大可能的消除冗余,提高数据的压缩率。
其次,本发明采用块级去重粒度,相比于传统的字符或字符串级的冗余匹配度,提高了冗余的去除速度,提高了数据的压缩速度,消除了更多的冗余,实现了压缩量及压缩吞吐量的提升。
基于图7所述的数据压缩***,下面详细描述本发明实施例中数据压缩***,请参阅图8,本发明实施例中数据压缩***的另一个实施例,包括:
分块单元801,用于将原数据分为多个数据块;
确认单元802,用于确认多个数据块中的相同数据块;
删除单元803,用于删除重复的相同数据块,使得原数据中保留一个相同数据块;
重组单元804,用于将相同数据块的相邻数据块迁移重组,生成重组数据;
第一压缩单元805,用于对重组数据进行压缩,得到压缩数据。
进一步,该***还包括:
第一生成单元806,用于记录多个数据块的第一顺序、第一偏移及块长,生成原文件谱。
第二生成单元807,用于记录重组数据中多个数据块的第二顺序、第二偏移及块长,生成重组文件谱;
更新单元,808,用于根据重组文件谱中所述多个数据块的第二顺序,将原文件谱记录的第一偏移更新为第三偏移,生成新原文件谱;
第二压缩单元809,将新原文件谱进行压缩,得到压缩文件谱。
具体的,确认单元802包括:
确认模块8021,用于通过SHA-1算法或MD5算法确认多个数据块中的相同数据块。
需要说明的是,本实施例中各单元及各模块的作用与图3所述实施例中数据压缩***的作用类似,此处不再赘述。
本发明中,通过分块单元801将原数据分为多个数据块,通过确认单元802确认多个数据块中的重复数据块后,通过删除单元803对重复数据块执行删除操作,同时,基于冗余的局部性原理,将相同数据块的相邻数据块视为相似数据块,并对相同数据块的相邻数据块迁移重组,使得相同数据块的相邻数据块在物理位置上相邻,生成重组数据,进而通过压缩单元705对重组数据进行压缩操作,得到压缩数据,从而最大可能的消除冗余,提高数据的压缩率。
其次,本发明采用块级去重粒度,相比于传统的字符或字符串级的冗余匹配度,提高了冗余的去除速度,提高了数据的压缩速度,消除了更多的冗余,实现了压缩量及压缩吞吐量的提升。
上面描述了本发明中的数据压缩***,下面来描述本发明中的数据解压***,请参阅图9,本发明实施例中的数据解压***的一个实施例,包括:
解压单元901,用于将压缩数据和压缩文件谱进行解压,得到重组数据和新原文件谱;
读取单元902,用于根据新原文件谱记录的多个数据块的第一顺序、第三偏移及块长,依次从重组数据中读取多个数据块;
写入单元903,用于将多个数据块,根据新原文件谱中记录的多个数据块的第一顺序依次写入,得到原数据。
需要说明的是,本实施例中各单元的作用与图6所述实施例中数据解压***的作用类似,此处不再赘述。
本发明中,对应数据压缩的方法,通过解压单元901,解压压缩数据及压缩文件谱,分别得到重组数据和新原文件谱,根据新原文件谱记录的多个数据块的顺序、偏移及块长,分别从重组数据中读取多个数据块,再依次写入多个数据块,即可恢复原数据。
上面从模块化功能实体的角度对本发明实施例中的数据压缩***、数据解压***进行了描述,下面从硬件处理的角度对本发明实施例中的计算机装置进行描述:
该计算机装置用于实现数据压缩***一侧的功能,本发明实施例中计算机装置一个实施例包括:
处理器以及存储器;
存储器用于存储计算机程序,处理器用于执行存储器中存储的计算机程序时,可以实现如下步骤:
将原数据分为多个数据块;
确认所述多个数据块中的相同数据块;
删除重复的相同数据块,使得所述原数据中保留一个所述相同数据块;
将所述相同数据块的相邻数据块迁移重组,生成重组数据;
对所述重组数据进行压缩,得到压缩数据。
在本发明的一些实施例中,处理器,还可以用于实现如下步骤:
记录多个数据块的第一顺序、第一偏移及块长,生成原文件谱。
记录重组数据中多个数据块的第二顺序、第二偏移及块长,生成重组文件谱;
原文件谱根据重组文件谱中多个数据块的第二顺序,将第一偏移更新为第三偏移,生成新原文件谱;
将新原文件谱进行压缩,得到压缩文件谱。
在本发明的一些实施例中,处理器,还可以用于实现如下步骤:
通过SHA-1算法或MD5算法确认多个数据块中的相同数据块。
该计算机装置还可以用于实现数据解压***一侧的功能,本发明实施例中计算机装置另一实施例包括:
将压缩数据和压缩文件谱进行解压,得到重组数据和新原文件谱;
根据新原文件谱记录的多个数据块的第一顺序、第三偏移及块长,依次从重组数据中读取多个数据块;
将多个数据块,根据新原文件谱中记录的多个数据块的第一顺序依次写入,得到原数据。
可以理解的是,无论是数据压缩***一侧,还是数据解压***一侧,上述说明的计算机装置中的处理器执行计算机程序时,也可以实现上述对应的各装置实施例中各单元的功能,此处不再赘述。示例性的,计算机程序可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器中,并由处理器执行,以完成本发明。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在数据压缩***/数据解压***中的执行过程。例如,计算机程序可以被分割成上述数据压缩***中的各单元,各单元可以实现如上述相应数据压缩***说明的具体功能。
计算机装置可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。计算机装置可包括但不仅限于处理器、存储器。本领域技术人员可以理解,处理器、存储器仅仅是计算机装置的示例,并不构成对计算机装置的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件,例如计算机装置还可以包括输入输出设备、网络接入设备、总线等。
处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,处理器是计算机装置的控制中心,利用各种接口和线路连接整个计算机装置的各个部分。
存储器可用于存储计算机程序和/或模块,处理器通过运行或执行存储在存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现计算机装置的各种功能。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序等;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
本发明还提供了一种计算机可读存储介质,该计算机可读存储介质用于实现数据压缩***一侧的功能,其上存储有计算机程序,计算机程序被处理器执行时,处理器,可以用于执行如下步骤:
将原数据分为多个数据块;
确认所述多个数据块中的相同数据块;
删除重复的相同数据块,使得所述原数据中保留一个所述相同数据块;
将所述相同数据块的相邻数据块迁移重组,生成重组数据;
对所述重组数据进行压缩,得到压缩数据。
在本发明的一些实施例中,计算机可读存储介质存储的计算机程序被处理器执行时,处理器,可以具体用于执行如下步骤:
记录多个数据块的第一顺序、第一偏移及块长,生成原文件谱。
记录重组数据中多个数据块的第二顺序、第二偏移及块长,生成重组文件谱;
原文件谱根据重组文件谱中多个数据块的第二顺序,将第一偏移更新为第三偏移,生成新原文件谱;
将新原文件谱进行压缩,得到压缩文件谱。
在本发明的一些实施例中,计算机程序被执行时,处理器还可以用于实现如下步骤:
通过SHA-1算法或MD5算法确认多个数据块中的相同数据块。
本发明还提供了另一种计算机可读存储介质,该计算机可读存储介质用于实现数据解压***一侧的功能,其上存储有计算机程序,计算机程序被处理器执行时,处理器,可以用于执行如下步骤:
将压缩数据和压缩文件谱进行解压,得到重组数据和新原文件谱;
根据新原文件谱记录的多个数据块的第一顺序、第三偏移及块长,依次从重组数据中读取多个数据块;
将多个数据块,根据新原文件谱中记录的多个数据块的第一顺序依次写入,得到原数据。
可以理解的是,集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在相应的一个计算机可读取存储介质中。基于这样的理解,本发明实现上述相应的实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (11)
1.一种数据压缩方法,其特征在于,包括:
将原数据分为多个数据块;
确认所述多个数据块中的相同数据块;
删除重复的相同数据块,使得所述原数据中仅保留一个所述相同数据块;
将所述多个数据块中的相同数据块的相邻数据块迁移重组,生成重组数据;
所述迁移重组包括:将所述多个数据块中的相同数据块左侧的相邻数据块迁移组合,将所述多个数据块中的相同数据块右侧的相邻数据块迁移组合,使得所述多个数据块中的相同数据块左侧的相邻数据块在物理位置上相邻以及所述多个数据块中的相同数据块右侧的相邻数据块在物理位置上相邻,得到所述重组数据;
对所述重组数据进行压缩,得到压缩数据;所述重组数据基于压缩窗口进行压缩,所述压缩窗口的大小大于所述重组数据的大小。
2.根据权利要求1所述的方法,其特征在于,在所述将原数据分为多个数据块之后,所述确认所述多个数据块中的相同数据块之前,所述方法还包括:
记录所述多个数据块的第一顺序、第一偏移及块长,生成原文件谱。
3.根据权利要求2所述的方法,其特征在于,在所述将所述相同数据块的相邻数据块迁移重组,生成重组数据之后,所述方法,还包括:
记录所述重组数据中所述多个数据块的第二顺序、第二偏移及块长,生成重组文件谱;
根据所述重组文件谱中所述多个数据块的第二顺序,将所述原文件谱中的所述第一偏移更新为第三偏移,生成新原文件谱;
将所述新原文件谱进行压缩,得到压缩文件谱。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述确认所述多个数据块中的相同数据块,包括:
通过SHA-1算法或MD5算法确认所述多个数据块中的相同数据块。
5.一种数据解压方法,其特征在于,包括:
将压缩数据和压缩文件谱进行解压,得到重组数据和新原文件谱;所述压缩数据为基于压缩窗口对所述重组数据进行压缩而得到,所述压缩窗口的大小大于所述重组数据的大小,所述重组数据为将多个数据块中的相同数据块的相邻数据块迁移重组而得到,所述相同数据块为删除原数据的多个数据块中重复的相同数据块而仅保留下来的一个相同数据块;
其中,所述迁移重组包括:将所述多个数据块中的相同数据块左侧的相邻数据块迁移组合,将所述多个数据块中的相同数据块右侧的相邻数据块迁移组合,使得所述多个数据块中的相同数据块左侧的相邻数据块在物理位置上相邻以及所述多个数据块中的相同数据块右侧的相邻数据块在物理位置上相邻,得到所述重组数据;
根据所述新原文件谱记录的多个数据块的第一顺序、第三偏移及块长,依次从所述重组数据中读取所述多个数据块;
将所述多个数据块,根据所述新原文件谱中记录的所述多个数据块的第一顺序依次写入,得到原数据。
6.一种数据压缩***,其特征在于,包括:
分块单元,用于将原数据分为多个数据块;
确认单元,用于确认所述多个数据块中的相同数据块;
删除单元,用于删除重复的相同数据块,使得所述原数据中仅保留一个所述相同数据块;
重组单元,用于将所述多个数据块中的相同数据块的相邻数据块迁移重组,生成重组数据;
所述迁移重组包括:将所述多个数据块中的相同数据块左侧的相邻数据块迁移组合,将所述多个数据块中的相同数据块右侧的相邻数据块迁移组合,使得所述多个数据块中的相同数据块左侧的相邻数据块在物理位置上相邻以及所述多个数据块中的相同数据块右侧的相邻数据块在物理位置上相邻,得到所述重组数据;
压缩单元,用于对所述重组数据进行压缩,得到压缩数据;所述重组数据基于压缩窗口进行压缩,所述压缩窗口的大小大于所述重组数据的大小。
7.一种数据解压***,其特征在于,包括:
解压单元,用于将压缩数据和压缩文件谱进行解压,得到重组数据和新原文件谱;所述压缩数据为基于压缩窗口对所述重组数据进行压缩而得到,所述压缩窗口的大小大于所述重组数据的大小,所述重组数据为将多个数据块中的相同数据块的相邻数据块迁移重组而得到,所述相同数据块为删除原数据的多个数据块中重复的相同数据块而仅保留下来的一个相同数据块;
其中,所述迁移重组包括:将所述多个数据块中的相同数据块左侧的相邻数据块迁移组合,将所述多个数据块中的相同数据块右侧的相邻数据块迁移组合,使得所述多个数据块中的相同数据块左侧的相邻数据块在物理位置上相邻以及所述多个数据块中的相同数据块右侧的相邻数据块在物理位置上相邻,得到所述重组数据;
读取单元,用于根据所述新原文件谱记录的多个数据块的第一顺序、第三偏移及块长,依次从所述重组数据中读取所述多个数据块;
写入单元,用于将所述多个数据块,根据所述新原文件谱中记录的所述多个数据块的第一顺序依次写入,得到原数据。
8.一种计算机装置,包括处理器,其特征在于,所述处理器在执行存储于存储器上的计算机程序时,用于实现如权利要求1至4任一项所述数据压缩方法中的步骤。
9.一种计算机装置,包括处理器,其特征在于,所述处理器在执行存储于存储器上的计算机程序时,用于实现如权利要求5所述数据解压方法中的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,用于实现如权利要求1至4任一项所述数据压缩方法中的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,用于实现如权利要求5所述数据解压方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710882469.6A CN107506153B (zh) | 2017-09-26 | 2017-09-26 | 一种数据压缩方法、数据解压方法及相关*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710882469.6A CN107506153B (zh) | 2017-09-26 | 2017-09-26 | 一种数据压缩方法、数据解压方法及相关*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107506153A CN107506153A (zh) | 2017-12-22 |
CN107506153B true CN107506153B (zh) | 2021-07-02 |
Family
ID=60699736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710882469.6A Active CN107506153B (zh) | 2017-09-26 | 2017-09-26 | 一种数据压缩方法、数据解压方法及相关*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107506153B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111124940B (zh) * | 2018-10-31 | 2022-03-22 | 深信服科技股份有限公司 | 一种基于全闪存阵列的空间回收方法及*** |
CN110995753A (zh) * | 2019-12-19 | 2020-04-10 | 中国电力科学研究院有限公司 | 用电信息采集***中远程通信报文的组合压缩方法 |
CN113765620B (zh) * | 2020-06-01 | 2022-09-23 | 南京大学 | 分块压缩编码方法、装置、计算机设备及可读存储介质 |
EP4030310A4 (en) | 2020-06-11 | 2022-12-21 | Huawei Technologies Co., Ltd. | DATA PROCESSING METHODS AND STORAGE DEVICE |
CN114077569B (zh) * | 2020-08-18 | 2023-07-18 | 富泰华工业(深圳)有限公司 | 压缩数据的方法及设备、解压缩数据的方法及设备 |
CN112260694B (zh) * | 2020-09-21 | 2022-01-11 | 广州中望龙腾软件股份有限公司 | 一种仿真文件的数据压缩方法 |
CN112380196B (zh) * | 2020-10-28 | 2023-03-21 | 安擎(天津)计算机有限公司 | 一种用于数据压缩传输的服务器 |
CN112637903B (zh) * | 2020-12-10 | 2024-02-09 | 中国西安卫星测控中心 | 卫星下行数据压缩方法及装置 |
CN113051238A (zh) * | 2021-03-31 | 2021-06-29 | 联想(北京)有限公司 | 处理方法和装置 |
CN114142868A (zh) * | 2022-01-29 | 2022-03-04 | 深圳市先地图像科技有限公司 | 一种数据压缩方法、数据解压方法及相关设备 |
CN116683916B (zh) * | 2023-08-03 | 2023-10-10 | 山东五棵松电气科技有限公司 | 一种数据中心容灾*** |
CN117216022B (zh) * | 2023-11-07 | 2024-02-02 | 湖南省致诚工程咨询有限公司 | 一种数字化工程咨询数据管理*** |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103020317A (zh) * | 2013-01-10 | 2013-04-03 | 曙光信息产业(北京)有限公司 | 基于重复数据删除的数据压缩方法和装置 |
CN104715021A (zh) * | 2015-02-27 | 2015-06-17 | 南京邮电大学 | 一种基于哈希方法的多标记学习的设计方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8009682B2 (en) * | 2009-05-05 | 2011-08-30 | Citrix Systems, Inc. | Systems and methods for packet steering in a multi-core architecture |
US8683484B2 (en) * | 2009-07-23 | 2014-03-25 | Novell, Inc. | Intelligently pre-placing data for local consumption by workloads in a virtual computing environment |
US8719529B2 (en) * | 2011-01-14 | 2014-05-06 | International Business Machines Corporation | Storage in tiered environment for colder data segments |
CN103176752A (zh) * | 2012-07-02 | 2013-06-26 | 晶天电子(深圳)有限公司 | 带有耐用转换层及临时文件转移功能从而实现闪速存储器磨损降低的超耐用固态驱动器 |
JP6296316B2 (ja) * | 2014-05-13 | 2018-03-20 | クロード クラウディング コーポレイション | 分散型セキュリティ保護データストレージ、およびストリーミングメディアコンテンツの送信 |
CN106610794B (zh) * | 2016-11-21 | 2020-05-15 | 深信服科技股份有限公司 | 数据去重的收敛分块方法及装置 |
CN107045265B (zh) * | 2017-03-07 | 2019-04-16 | 无锡影速半导体科技有限公司 | 直写式光刻机中倾斜式扫描数据的重组方法 |
-
2017
- 2017-09-26 CN CN201710882469.6A patent/CN107506153B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103020317A (zh) * | 2013-01-10 | 2013-04-03 | 曙光信息产业(北京)有限公司 | 基于重复数据删除的数据压缩方法和装置 |
CN104715021A (zh) * | 2015-02-27 | 2015-06-17 | 南京邮电大学 | 一种基于哈希方法的多标记学习的设计方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107506153A (zh) | 2017-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107506153B (zh) | 一种数据压缩方法、数据解压方法及相关*** | |
CN107682016B (zh) | 一种数据压缩方法、数据解压方法及相关*** | |
CN108427538B (zh) | 全闪存阵列的存储数据压缩方法、装置、及可读存储介质 | |
KR102319657B1 (ko) | 저장된 데이터 유닛들의 동작 관리 | |
CN108427539B (zh) | 缓存设备数据的离线去重压缩方法、装置及可读存储介质 | |
KR102275431B1 (ko) | 저장된 데이터 유닛들의 동작 관리 | |
US11829624B2 (en) | Method, device, and computer readable medium for data deduplication | |
US9405761B1 (en) | Technique to determine data integrity for physical garbage collection with limited memory | |
WO2014147671A1 (ja) | 圧縮装置、圧縮方法、伸張装置、伸張方法および情報処理システム | |
CN111124940B (zh) | 一种基于全闪存阵列的空间回收方法及*** | |
Funasaka et al. | Adaptive loss‐less data compression method optimized for GPU decompression | |
CN112559462A (zh) | 一种数据压缩方法、装置、计算机设备和存储介质 | |
KR102275240B1 (ko) | 저장된 데이터 유닛들의 동작 관리 | |
US10817475B1 (en) | System and method for encoding-based deduplication | |
CN111061428B (zh) | 一种数据压缩的方法及装置 | |
CN111198857A (zh) | 一种基于全闪存阵列的数据压缩方法及*** | |
US11360954B2 (en) | System and method for hash-based entropy calculation | |
US10963437B2 (en) | System and method for data deduplication | |
US10990565B2 (en) | System and method for average entropy calculation | |
KR20200121760A (ko) | 인코딩된 데이터에 대한 조건부 트랜스코딩 | |
CN114416752B (zh) | Kv ssd的数据处理方法及装置 | |
CN115809013A (zh) | 一种数据重删方法及相关装置 | |
US10599355B2 (en) | Data compression with redundancy removal across boundaries of compression search engines | |
US20200349118A1 (en) | System and method for offset-based deduplication | |
CN111625186A (zh) | 数据处理方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |