CN107947799A - 一种数据压缩方法及装置 - Google Patents

一种数据压缩方法及装置 Download PDF

Info

Publication number
CN107947799A
CN107947799A CN201711215441.3A CN201711215441A CN107947799A CN 107947799 A CN107947799 A CN 107947799A CN 201711215441 A CN201711215441 A CN 201711215441A CN 107947799 A CN107947799 A CN 107947799A
Authority
CN
China
Prior art keywords
data
block
length
compression
compressed
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.)
Granted
Application number
CN201711215441.3A
Other languages
English (en)
Other versions
CN107947799B (zh
Inventor
刘卯银
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201711215441.3A priority Critical patent/CN107947799B/zh
Publication of CN107947799A publication Critical patent/CN107947799A/zh
Application granted granted Critical
Publication of CN107947799B publication Critical patent/CN107947799B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0253Garbage collection, i.e. reclamation of unreferenced memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (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

本发明公开了一种数据压缩方法,该方法包括以下步骤:接收按照预设的第一长度输入的待压缩的块数据;对块数据进行压缩,获得压缩后的压缩块数据;将压缩块数据按照压缩顺序进行衔接排布,获得衔接压缩块数据;将衔接压缩块数据划分给多个长度为预设的第二长度的数据块,以使系统以数据块为单位进行空间释放。应用本发明实施例所提供的技术方案,通过定长输入、变长输出的块数据压缩方式,并对变长输出的压缩后的块数据按压缩顺序进行衔接排布,将衔接排布后的块数据划分给多个长度为预设的第二长度的block,可以减少对空间的浪费,提高块数据的压缩效率,简化了对元数据的索引。本发明还公开了一种数据压缩装置,具有相应技术效果。

Description

一种数据压缩方法及装置
技术领域
本发明涉及数据压缩技术领域,特别是涉及一种数据压缩方法及装置。
背景技术
随着数据压缩技术的发展,较大地缩减了存储系统中的数据量,从而减少了存储空间,提高了系统传输、存储和处理效率。
现有的数据压缩的方法主要包括两种,方法一是定长块数据到定长块数据的压缩,如图1所示,比如64KB的块数据压缩成8KB的整数倍,或者将8KB的块数据压缩成1KB的整数倍。将主机下发的块数据切分成8KB对齐的块数据,若不对齐则进行补齐读,使待压缩块数据圆整成8KB,然后将8KB的块数据进行压缩,压缩后的块数据按照1KB向上圆整,比如压缩后的块数据是1.1KB,则按照2KB进行存储。通过圆整的方式,解决压缩后的块数据变长带来的逻辑盘上的空间分配的碎片问题。方法二是变长块数据到定长块数据的压缩,如图2所示,将同一时间内主机下发的多个块数据拼接成一个大的块数据进行压缩,压缩后的块数据按照固定的粒度8KB存储到下面的逻辑盘上。
以上两种数据压缩方法均存在一定的缺点,其中,方法一压缩后的块数据是定长的,必须以一定的粒度进行圆整,存在较大的空间浪费,影响数据的压缩效率。其次,方法二由于各块数据的长度不同,所以需要记录各块数据包括各块数据输入到压缩处理器的地址的元数据信息,元数据的索引复杂。
发明内容
为解决上述技术问题,本发明提供如下技术方案:
一种数据压缩方法,包括:
接收按照预设的第一长度输入的待压缩的块数据;
对所述块数据进行压缩,获得压缩后的压缩块数据;
将所述压缩块数据在预设的多个物理卷中按照压缩顺序进行衔接排布,获得衔接压缩块数据;
将所述衔接压缩块数据划分给多个长度为预设的第二长度的数据块,以使系统以所述数据块为单位进行空间释放;
其中,所述第二长度为对所述衔接压缩块数据进行存储的磁盘阵列条带的长度的整数倍。
在本发明的一种具体实施方式中,所述接收按照预设的第一长度输入的待压缩的块数据,包括:
接收通过补齐读的方式按照预设的第一长度输入的待压缩的块数据。
在本发明的一种具体实施方式中,所述对所述块数据进行压缩,包括:
利用在线无损压缩的方式对所述块数据进行压缩。
在本发明的一种具体实施方式中,在所述将所述衔接压缩块数据划分给多个长度为预设的第二长度的数据块之后,还包括:
为每个数据块设置相应的元数据区;
将每个数据块中所述衔接压缩块数据的元数据信息存储到对应的元数据区中;
其中,所述元数据信息包括每个第一长度的待压缩的块数据的地址与对应的所述衔接压缩块数据所在的物理卷的ID和所述物理卷的地址的对应关系。
在本发明的一种具体实施方式中,所述系统以所述数据块为单位进行空间释放,包括:
针对每个数据块判断所述对应关系是否均发生改变;
如果是,则确定所述数据块中的各所述衔接压缩块数据为无效块数据;
将所述数据块进行空间释放。
一种数据压缩装置,包括:
块数据接收模块,用于接收按照预设的第一长度输入的待压缩的块数据;
块数据压缩模块,用于对所述块数据进行压缩,获得压缩后的压缩块数据;
衔接压缩块数据获得模块,用于将所述压缩块数据在预设的多个物理卷中按照压缩顺序进行衔接排布,获得衔接压缩块数据;
数据块划分模块,用于将所述衔接压缩块数据划分给多个长度为预设的第二长度的数据块,以使系统以所述数据块为单位进行空间释放;
其中,所述第二长度为对所述衔接压缩块数据进行存储的磁盘阵列条带的长度的整数倍。
在本发明的一种具体实施方式中,所述块数据接收模块具体为接收通过补齐读的方式按照预设的第一长度输入的待压缩的块数据的模块。
在本发明的一种具体实施方式中,所述块数据压缩模块具体为利用在线无损压缩的方式对所述块数据进行压缩的模块。
在本发明的一种具体实施方式中,还包括:
元数据区设置模块,用于在所述将所述衔接压缩块数据划分给多个长度为预设的第二长度的数据块之后,为每个数据块设置相应的元数据区;
信息存储模块,用于将每个数据块中所述衔接压缩块数据的元数据信息存储到所述元数据区中;
其中,所述元数据信息包括每个第一长度的待压缩的块数据的地址与对应的所述衔接压缩块数据所在的物理卷的ID和所述物理卷的地址的对应关系。
在本发明的一种具体实施方式中,所述数据块划分模块,包括:
无效块数据确定子模块,用于针对每个数据块判断所述元数据信息中所述对应关系是否均发生改变,如果是,则确定所述数据块中的各所述衔接压缩块数据为无效块数据;
空间释放子模块,用于将所述数据块进行空间释放。
应用本发明实施例所提供的技术方案,接收按照预设的第一长度输入的待压缩的块数据,对块数据进行压缩,获得压缩后的压缩块数据,将压缩块数据在预设的多个物理卷中按照压缩顺序进行衔接排布,获得衔接压缩块数据,将衔接压缩块数据划分给多个长度为预设的第二长度的数据块,以使系统以数据块为单位进行空间释放,其中,第二长度为对衔接压缩块数据进行存储的磁盘阵列条带的长度的整数倍。通过定长输入、变长输出的块数据压缩方式,并对变长输出的压缩后的块数据按压缩顺序进行衔接排布,将衔接排布后的块数据划分给多个长度为预设的第二长度的数据块,可以减少对空间的浪费,提高块数据的压缩效率,简化了对元数据的索引。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中一种数据压缩方法的压缩层次图;
图2为现有技术中另一种数据压缩方法的压缩层次图;
图3为本发明实施例中一种数据压缩方法的实施流程图;
图4为本发明实施例中一种数据压缩方法的压缩层次图;
图5为本发明实施例中一种数据压缩装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图3,为本发明实施例中一种数据压缩方法的实施流程图,该方法可以包括以下步骤:
S301:接收按照预设的第一长度输入的待压缩的块数据。
可以给待压缩的块数据预先设定其输入到压缩处理器中的第一长度,各待压缩块数据按照该第一长度输入到压缩处理器中,压缩处理器接收按照预设的第一长度输入的待压缩的块数据。使用固定长度的输入方法,输入的块数据可能是经过重删的块数据,便于重删和压缩的结合。
需要说明的是,本发明实施例对第一长度不做限制,可以根据实际情况进行设定和调整。
在本发明的一种具体实施方式中,步骤S301可以包括以下步骤:
接收通过补齐读的方式按照预设的第一长度输入的待压缩的块数据。
各待压缩的块数据按照设定的第一长度输入到压缩处理器后,其所在第一长度的系统空间可能有空余,因此可以跨块数据补齐读,将接下来待压缩的块数据读入到该有空余的系统空间中,从而节省空间。
S302:对块数据进行压缩,获得压缩后的压缩块数据。
压缩处理器对接收到的各待压缩块数据进行压缩,获得压缩后的压缩块数据。
在本发明的一种具体实施方式中,对块数据进行压缩,可以包括以下步骤:
利用在线无损压缩的方式对块数据进行压缩。
压缩处理器在接收到输入的各待压缩的块数据时,可以利用在线无损压缩的方式对块数据进行压缩。利用在线压缩的压缩方法可以对块数据进行实时压缩,盘上存储的数据是压缩后的数据,占用的空间少。利用无损压缩的方法可以利用数据的统计冗余对待压缩块数据进行压缩,使得压缩后的压缩块数据可以还原到未压缩的状态。利用在线无损压缩的压缩方式兼得了在线压缩和无损压缩的优点。
S303:将压缩块数据在预设的多个物理卷中按照压缩顺序进行衔接排布,获得衔接压缩块数据。
同一长度的待压缩块数据压缩后获得的压缩块数据的长度可以是不同的,并且压缩后的各压缩块数据可能存放到预设的多个不同的物理卷中,将压缩后的压缩块数据在预设的多个物理卷中按照压缩顺序进行衔接排布获得衔接压缩块数据,可以使压缩后的压缩块数据做到字节级别的压缩,从而使得压缩块数据更加紧实,没有空洞。
S304:将衔接压缩块数据划分给多个长度为预设的第二长度的数据块。
系统以数据块为单位进行空间释放。
其中,第二长度为对衔接压缩块数据进行存储的磁盘阵列条带的长度的整数倍。
压缩后的压缩块数据的长度可能是不同的,在空间释放后下一次的空间分配复杂,需要记录至少包含已经分配到压缩块数据的空间的地址和长度的空间位图,并且空间释放后,也需要更新空间位图,分配位图的更新会导致系统的性能下降,空间位图的更新导致的频繁写入也会加速SSD的磨损,降低系统的可靠性。因此,可以预先设定多个第二长度的数据块block,将衔接压缩块数据化分给多个长度为预设的第二长度的数据块。在这种情况下,系统可以以数据块为单位进行空间释放。通过大块的空间分块管理,有效的绕开空间位图的管理方式,降低了系统复杂度。同时,由于无需使用空间位图的管理方式,块数据更新时,不需要更新位图信息。
预设的数据块的第二长度具体设置为磁盘阵列RAID条带的整数倍,这样数据块向下刷盘时,后端的盘可以进行满条带的写。
应用本发明实施例所提供的方法,接收按照预设的第一长度输入的待压缩的块数据,对块数据进行压缩,获得压缩后的压缩块数据,将压缩块数据在预设的多个物理卷中按照压缩顺序进行衔接排布,获得衔接压缩块数据,将衔接压缩块数据划分给多个长度为预设的第二长度的数据块,以使系统以数据块为单位进行空间释放,其中,第二长度为对衔接压缩块数据进行存储的磁盘阵列条带的长度的整数倍。通过定长输入、变长输出的块数据压缩方式,并对变长输出的压缩后的块数据按压缩顺序进行衔接排布,将衔接排布后的块数据划分给多个长度为预设的第二长度的数据块,可以减少对空间的浪费,提高块数据的压缩效率,简化了对元数据的索引。
在本发明的一种具体实施方式中,在步骤S304之后,该方法还可以包括以下步骤:
步骤一:为每个数据块设置相应的元数据区;
步骤二:将每个数据块中衔接压缩块数据的元数据信息存储到对应的元数据区中;
其中,元数据信息包括每个第一长度的待压缩的块数据的地址与对应的衔接压缩块数据所在的物理卷的ID和物理卷的的地址的对应关系。
为方便描述,可以将上述两个步骤结合起来进行说明。
可以在每个数据块的前面或尾部设置一个元数据区,将每个数据块中衔接压缩块数据的元数据信息存储到对应的元数据区中。元数据信息中包括每个第一长度的待压缩的块数据的地址与对应的衔接压缩块数据所在的物理卷的ID和物理卷的LBA地址的对应关系,其中,每个第一长度是待压缩的块数据的地址是根据各待压缩的块数据的长度计算得到的。除此之外元数据信息还可以包括压缩块数据的地址、压缩块数据的长度。其中,物理卷的ID和地址可以是编址在一起的一个量。
在本发明的一种具体实施方式中,系统以数据块为单位进行空间释放可以包括以下步骤:
步骤一:针对每个数据块判断对应关系是否均发生改变,如果是,则执行步骤二;
步骤二:确定数据块中的各衔接压缩块数据为无效块数据;
步骤三:将数据块进行空间释放。
为方便描述,可以将上述三个步骤结合起来进行说明。
针对一个块数据,在压缩处理器对该块数据进行压缩完成后,元数据信息中该块数据在刚输入到压缩处理器处于待压缩状态时的地址会与其对应的衔接压缩块数据的地址相对应。并且块数据处于待压缩状态的地址与其压缩后对应的衔接压缩块数据对应的物理卷的地址会随着块数据衔接压缩的完成而发生变化,因此,可以通过检测针对每个数据块判断元数据信息中对应关系是否均发生改变,如果发生了改变,则说明该数据块中的各衔接压缩块数据均已完成衔接压缩,将该数据块中的各衔接压缩块数据确定为无效块数据,对该衔接压缩块数据进行释放。
在实际应用中,如图4所示,可以将压缩处理分为逻辑卷logic volume层,数据压缩data compress层和物理physic volume层。逻辑卷层将卷划分成等大的定长的块进行管理,在对块数据进行读取时,通过跨块拆分的补齐读方式进行读取,数据压缩层负责对块数据进行压缩,并将压缩后的压缩块数据发送给物理卷层,物理卷层对压缩块数据按照压缩的顺序进行衔接排布,获得衔接压缩块数据,并将衔接压缩块数据划分给多个数据块,有效的绕开了空间位图的管理方式。
针对一个数据块,可以根据对于一个块数据在刚输入到压缩处理器处于待压缩状态时的地址,其对应的衔接压缩后的衔接压缩块数据对应的物理卷的地址会随着块数据衔接压缩的完成而发生改变的特点,扫描元数据区中的元数据信息,找到当前块数据在刚输入到压缩处理器处于待压缩状态时的原地址对应的衔接压缩块数据所在的现物理卷的地址,可以查询预设的物理卷映射表,其中映射表中包含原来块数据在刚输入到压缩处理器处于待压缩状态时的原地址与其对应的衔接压缩块数据所在的原物理卷的地址的对应关系。通过对比一个数据块中原来块数据在刚输入到压缩处理器处于待压缩状态时的原地址对应的原物理卷的地址和现物理卷的地址是否相同,可以得出系统是否需要对该数据块进行空间释放,即当原物理卷的地址和现物理卷的地址均不同时,对该数据块进行释放。在对待压缩块数据进行压缩时,如果不存在全空的数据块,还可以通过对衔接压缩块数据进行迁移的方式来释放空间。其中,该方法也适用于开了重删的系统,当判断数据块中的衔接压缩块数据均为无效数据时,可以对该数据块进行释放。
相应于上面的方法实施例,本发明实施例还提供了一种数据压缩装置,下文描述的一种数据压缩装置与上文描述的一种数据压缩方法可相互对应参照。
参见图5,为本发明实施例中一种数据压缩装置的结构示意图,该装置可以包括以下模块:
块数据接收模块501,用于接收按照预设的第一长度输入的待压缩的块数据;
块数据压缩模块502,用于对块数据进行压缩,获得压缩后的压缩块数据;
衔接压缩块数据获得模块503,用于将压缩块数据在预设的多个物理卷中按照压缩顺序进行衔接排布,获得衔接压缩块数据;
数据块划分模块504,用于将衔接压缩块数据划分给多个长度为预设的第二长度的数据块。
应用本发明实施例所提供的装置,接收按照预设的第一长度输入的待压缩的块数据,对块数据进行压缩,获得压缩后的压缩块数据,将压缩块数据在预设的多个物理卷中按照压缩顺序进行衔接排布,获得衔接压缩块数据,将衔接压缩块数据划分给多个长度为预设的第二长度的数据块,以使系统以数据块为单位进行空间释放,其中,第二长度为对衔接压缩块数据进行存储的磁盘阵列条带的长度的整数倍。通过定长输入、变长输出的块数据压缩方式,并对变长输出的压缩后的块数据按压缩顺序进行衔接排布,将衔接排布后的块数据划分给多个长度为预设的第二长度的数据块,可以减少对空间的浪费,提高块数据的压缩效率,简化了对元数据的索引。
在本发明的一种具体实施方式中,块数据接收模块501具体为接收通过补齐读的方式按照预设的第一长度输入的待压缩的块数据的模块。
在本发明的一种具体实施方式中,块数据压缩模块502具体为利用在线无损压缩的方式对块数据进行压缩的模块。
在本发明的一种具体实施方式中,该装置还可以包括:
元数据区设置模块,用于在将衔接压缩块数据划分给多个长度为预设的第二长度的数据块之后,为每个数据块设置相应的元数据区;
信息存储模块,用于将每个数据块中衔接压缩块数据的元数据信息存储到对应的元数据区中;
其中,元数据信息包括每个第一长度的待压缩的块数据的地址与对应的衔接压缩块数据所在的物理卷的ID和物理卷的地址的对应关系。
在本发明的一种具体实施方式中,数据块划分模块504,包括:
无效块数据确定子模块,用于针对每个数据块判断对应关系是否均发生改变,如果是,则确定数据块中的各衔接压缩块数据为无效块数据;
空间释放子模块,用于将数据块进行空间释放。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

Claims (10)

1.一种数据压缩方法,其特征在于,包括:
接收按照预设的第一长度输入的待压缩的块数据;
对所述块数据进行压缩,获得压缩后的压缩块数据;
将所述压缩块数据在预设的多个物理卷中按照压缩顺序进行衔接排布,获得衔接压缩块数据;
将所述衔接压缩块数据划分给多个长度为预设的第二长度的数据块,以使系统以所述数据块为单位进行空间释放;
其中,所述第二长度为对所述衔接压缩块数据进行存储的磁盘阵列条带的长度的整数倍。
2.根据权利要求1所述的方法,其特征在于,所述接收按照预设的第一长度输入的待压缩的块数据,包括:
接收通过补齐读的方式按照预设的第一长度输入的待压缩的块数据。
3.根据权利要求2所述的方法,其特征在于,所述对所述块数据进行压缩,包括:
利用在线无损压缩的方式对所述块数据进行压缩。
4.根据权利要求1至3之中任一项所述的方法,其特征在于,在所述将所述衔接压缩块数据划分给多个长度为预设的第二长度的数据块之后,还包括:
为每个数据块设置相应的元数据区;
将每个数据块中所述衔接压缩块数据的元数据信息存储到对应的元数据区中;
其中,所述元数据信息包括每个第一长度的待压缩的块数据的地址与对应的所述衔接压缩块数据所在的物理卷的ID和所述物理卷的地址的对应关系。
5.根据权利要求4所述的方法,其特征在于,所述系统以所述数据块为单位进行空间释放,包括:
针对每个数据块判断所述对应关系是否均发生改变;
如果是,则确定所述数据块中的各所述衔接压缩块数据为无效块数据;
将所述数据块进行空间释放。
6.一种数据压缩装置,其特征在于,包括:
块数据接收模块,用于接收按照预设的第一长度输入的待压缩的块数据;
块数据压缩模块,用于对所述块数据进行压缩,获得压缩后的压缩块数据;
衔接压缩块数据获得模块,用于将所述压缩块数据在预设的多个物理卷中按照压缩顺序进行衔接排布,获得衔接压缩块数据;
数据块划分模块,用于将所述衔接压缩块数据划分给多个长度为预设的第二长度的数据块,以使系统以所述数据块为单位进行空间释放;
其中,所述第二长度为对所述衔接压缩块数据进行存储的磁盘阵列条带的长度的整数倍。
7.根据权利要求6所述的装置,其特征在于,所述块数据接收模块具体为接收通过补齐读的方式按照预设的第一长度输入的待压缩的块数据的模块。
8.根据权利要求7所述的装置,其特征在于,所述块数据压缩模块具体为利用在线无损压缩的方式对所述块数据进行压缩的模块。
9.根据权利要求6至8之中任一项所述的装置,其特征在于,还包括:
元数据区设置模块,用于在所述将所述衔接压缩块数据划分给多个长度为预设的第二长度的数据块之后,为每个数据块设置相应的元数据区;
信息存储模块,用于将每个数据块中所述衔接压缩块数据的元数据信息存储到对应的元数据区中;
其中,所述元数据信息包括每个第一长度的待压缩的块数据的地址与对应的所述衔接压缩块数据所在的物理卷的ID和所述物理卷的地址的对应关系。
10.根据权利要求9所述的装置,其特征在于,所述数据块划分模块,包括:
无效块数据确定子模块,用于针对每个数据块判断所述对应关系是否均发生改变,如果是,则确定所述数据块中的各所述衔接压缩块数据为无效块数据;
空间释放子模块,用于将所述数据块进行空间释放。
CN201711215441.3A 2017-11-28 2017-11-28 一种数据压缩方法及装置 Active CN107947799B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711215441.3A CN107947799B (zh) 2017-11-28 2017-11-28 一种数据压缩方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711215441.3A CN107947799B (zh) 2017-11-28 2017-11-28 一种数据压缩方法及装置

Publications (2)

Publication Number Publication Date
CN107947799A true CN107947799A (zh) 2018-04-20
CN107947799B CN107947799B (zh) 2021-06-29

Family

ID=61949227

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711215441.3A Active CN107947799B (zh) 2017-11-28 2017-11-28 一种数据压缩方法及装置

Country Status (1)

Country Link
CN (1) CN107947799B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108848383A (zh) * 2018-06-16 2018-11-20 武汉宝辉科技有限公司 一种视频、图像数据的压缩方法
CN109189345A (zh) * 2018-09-18 2019-01-11 郑州云海信息技术有限公司 一种在线数据整理方法、装置、设备及存储介质
CN109445713A (zh) * 2018-11-09 2019-03-08 郑州云海信息技术有限公司 一种元数据卷的存储状态记录方法、系统及相关组件
WO2019228098A1 (zh) * 2018-05-30 2019-12-05 华为技术有限公司 一种数据压缩方法及装置
CN110764707A (zh) * 2019-10-25 2020-02-07 苏州浪潮智能科技有限公司 数据处理方法及装置
CN113728601A (zh) * 2019-04-29 2021-11-30 日立数据管理有限公司 优化压缩数据的存储和获取
WO2022262381A1 (zh) * 2021-06-16 2022-12-22 华为技术有限公司 一种数据压缩方法及装置
CN117389484A (zh) * 2023-12-12 2024-01-12 深圳大普微电子股份有限公司 数据存储处理方法、装置、设备及存储介质

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10271013A (ja) * 1997-03-18 1998-10-09 Hewlett Packard Co <Hp> データの圧縮方法および画像データの圧縮方法と圧縮装置
CN1247669A (zh) * 1996-12-18 2000-03-15 汤姆森消费电子有限公司 有效的固定长度块压缩和解压
CN1620761A (zh) * 2002-01-22 2005-05-25 诺基亚有限公司 自适应可变长度编码
JP2012147061A (ja) * 2011-01-07 2012-08-02 Yamaha Corp フォントセット圧縮データのデータ構造およびアクセス方法
CN103136109A (zh) * 2013-02-07 2013-06-05 中国科学院苏州纳米技术与纳米仿生研究所 一种具有压缩功能的固态存储系统ftl写入及读取方法
WO2013147819A1 (en) * 2012-03-29 2013-10-03 Intel Corporation Compression-enabled blending of data in non-volatile memory
CN103581674A (zh) * 2012-08-07 2014-02-12 上海算芯微电子有限公司 视频数据的压缩/解压缩方法及系统
CN104035725A (zh) * 2013-03-05 2014-09-10 宏达国际电子股份有限公司 用以存取数据的电子装置及其数据存取方法
CN104239438A (zh) * 2014-08-29 2014-12-24 北京大学深圳研究生院 基于分离存储的文件信息存储方法和文件信息读写方法
CN105103137A (zh) * 2013-03-15 2015-11-25 西部数据技术公司 数据存储系统的数据的压缩和格式化
US20160134878A1 (en) * 2014-11-10 2016-05-12 Vixs Systems Inc. Frame buffer compression using separate aggregation of fixed-length and variable-length components of codewords
CN106681659A (zh) * 2016-12-16 2017-05-17 郑州云海信息技术有限公司 数据压缩的方法及装置
CN106980582A (zh) * 2016-01-18 2017-07-25 中兴通讯股份有限公司 数据处理方法和装置

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1247669A (zh) * 1996-12-18 2000-03-15 汤姆森消费电子有限公司 有效的固定长度块压缩和解压
JPH10271013A (ja) * 1997-03-18 1998-10-09 Hewlett Packard Co <Hp> データの圧縮方法および画像データの圧縮方法と圧縮装置
CN1620761A (zh) * 2002-01-22 2005-05-25 诺基亚有限公司 自适应可变长度编码
JP2012147061A (ja) * 2011-01-07 2012-08-02 Yamaha Corp フォントセット圧縮データのデータ構造およびアクセス方法
WO2013147819A1 (en) * 2012-03-29 2013-10-03 Intel Corporation Compression-enabled blending of data in non-volatile memory
CN103581674A (zh) * 2012-08-07 2014-02-12 上海算芯微电子有限公司 视频数据的压缩/解压缩方法及系统
CN103136109A (zh) * 2013-02-07 2013-06-05 中国科学院苏州纳米技术与纳米仿生研究所 一种具有压缩功能的固态存储系统ftl写入及读取方法
CN104035725A (zh) * 2013-03-05 2014-09-10 宏达国际电子股份有限公司 用以存取数据的电子装置及其数据存取方法
CN105103137A (zh) * 2013-03-15 2015-11-25 西部数据技术公司 数据存储系统的数据的压缩和格式化
CN104239438A (zh) * 2014-08-29 2014-12-24 北京大学深圳研究生院 基于分离存储的文件信息存储方法和文件信息读写方法
US20160134878A1 (en) * 2014-11-10 2016-05-12 Vixs Systems Inc. Frame buffer compression using separate aggregation of fixed-length and variable-length components of codewords
CN106980582A (zh) * 2016-01-18 2017-07-25 中兴通讯股份有限公司 数据处理方法和装置
CN106681659A (zh) * 2016-12-16 2017-05-17 郑州云海信息技术有限公司 数据压缩的方法及装置

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110557124B (zh) * 2018-05-30 2021-06-22 华为技术有限公司 一种数据压缩方法及装置
WO2019228098A1 (zh) * 2018-05-30 2019-12-05 华为技术有限公司 一种数据压缩方法及装置
CN110557124A (zh) * 2018-05-30 2019-12-10 华为技术有限公司 一种数据压缩方法及装置
CN108848383A (zh) * 2018-06-16 2018-11-20 武汉宝辉科技有限公司 一种视频、图像数据的压缩方法
CN109189345A (zh) * 2018-09-18 2019-01-11 郑州云海信息技术有限公司 一种在线数据整理方法、装置、设备及存储介质
CN109189345B (zh) * 2018-09-18 2022-03-04 郑州云海信息技术有限公司 一种在线数据整理方法、装置、设备及存储介质
CN109445713A (zh) * 2018-11-09 2019-03-08 郑州云海信息技术有限公司 一种元数据卷的存储状态记录方法、系统及相关组件
CN113728601A (zh) * 2019-04-29 2021-11-30 日立数据管理有限公司 优化压缩数据的存储和获取
CN113728601B (zh) * 2019-04-29 2023-04-25 日立数据管理有限公司 优化压缩数据的存储和获取
CN110764707A (zh) * 2019-10-25 2020-02-07 苏州浪潮智能科技有限公司 数据处理方法及装置
WO2022262381A1 (zh) * 2021-06-16 2022-12-22 华为技术有限公司 一种数据压缩方法及装置
CN117389484A (zh) * 2023-12-12 2024-01-12 深圳大普微电子股份有限公司 数据存储处理方法、装置、设备及存储介质
CN117389484B (zh) * 2023-12-12 2024-04-26 深圳大普微电子股份有限公司 数据存储处理方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN107947799B (zh) 2021-06-29

Similar Documents

Publication Publication Date Title
CN107947799A (zh) 一种数据压缩方法及装置
US9720841B2 (en) Hardware managed compressed cache
CN109690681B (zh) 处理数据的方法、存储装置、固态硬盘和存储系统
CN105190573B (zh) 存储数据的减少冗余
US10067881B2 (en) Compression and caching for logical-to-physical storage address mapping tables
US9946462B1 (en) Address mapping table compression
US6816942B2 (en) Storage control apparatus and method for compressing data for disk storage
CN103995855B (zh) 存储数据的方法和装置
WO2012168960A1 (en) Semiconductor storage apparatus and method of controlling semiconductor storage apparatus
CN106030498B (zh) 存储装置和数据处理方法以及存储系统
US20160188227A1 (en) Method and apparatus for writing data into solid state disk
TW201918893A (zh) 資料儲存裝置與記憶體裝置之資料處理方法
CN105206306A (zh) 在非易失性存储器处理纠错码的方法及非易失性存储装置
JP5781867B2 (ja) 相対および絶対デルタ値を使用するデータ圧縮および復元
CN105204781A (zh) 压缩方法、装置和设备
CN108733316A (zh) 用于管理存储系统的方法和管理器
CN115576505B (zh) 一种数据存储方法、装置、设备及可读存储介质
US9378214B2 (en) Method and system for hash key memory reduction
CN111125033A (zh) 一种基于全闪存阵列的空间回收方法及系统
CN103544995B (zh) 一种坏道修复方法及装置
CN109814809A (zh) 数据压缩方法及装置
CN109196458B (zh) 存储系统可用容量计算方法及装置
CN108572788A (zh) 数据存取方法、装置及系统
CN109445693A (zh) 一种数据压缩方法和装置
CN113687978A (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