存储驱动器及其上的压缩系统及压缩其上的数据的方法技术方案

技术编号:19934164 阅读:38 留言:0更新日期:2018-12-29 04:32
本发明专利技术提供一种存储驱动器上的压缩系统、压缩存储驱动器上的数据的方法及存储驱动器。本发明专利技术的实施例包含一种压缩系统,所述压缩系统包含一或多个可压缩性输入;压缩预测器,配置成基于一或多个可压缩性输入来预测数据的可压缩性;压缩器,配置成压缩数据;以及一或多个压缩输入。压缩预测器或压缩器中的至少一个配置成基于一或多个压缩输入来确定如何压缩数据。一或多个可压缩性输入包括对象扩展名字典、对象签名字典以及熵估算算法库中的至少一个。一或多个压缩输入包括服务质量简档、装置性能简档以及压缩算法性能表中的至少一个。本发明专利技术的实施例所描述的预测可压缩性并确定如何压缩数据的方法,可优化存储驱动器的总体性能。

【技术实现步骤摘要】
存储驱动器及其上的压缩系统及压缩其上的数据的方法相关申请案的交叉引用本申请要求2017年6月20日提交的美国临时专利申请第62/522,423号的权益,所述申请的内容以全文引用的方式并入本文中。
本专利技术概念涉及一种存储系统,且更确切地说,涉及一种具有用于预测数据的可压缩性的压缩预测器和用于基于预测来压缩数据的压缩器的压缩系统、一种包含所述压缩系统的驱动器以及一种用于预测和压缩数据的方法。
技术介绍
压缩数据是增大数据存储容量的有效使用的有效方式。然而,并非所有压缩算法都是等同的。一些压缩算法对某些类型的数据比对其它类型的数据更好地用,且一般来说,压缩算法以压缩率换得时间/处理量。如果存储装置盲目地尝试压缩其接收和存储的所有数据,那么其将造成不必要的延迟、处理量降低以及处理器循环浪费。这是因为并非所有传入数据都适合于压缩。一些数据已在主机上压缩为单独、显式压缩特征的一部分,或是固有的,就如许多多媒体文件类型的情况一样。这些文件并不适合于造成处理量降低和延迟的额外压缩。如果平均压缩率良好,那么这类降低是可接受的(即,空间使用率大大降低)。然而,如果平均压缩率不佳,那么将不能实现数据压缩的目的且唯一结果将是性能损失。将文件存储于相同大小的逻辑块中的常规块存储系统能够压缩个别逻辑块以增大存储容量。然而,块系统的存储结构使得难以基于文件类型和格式来改进所存储数据的压缩,因为难以在所述块中和在所述块之间定位特定类型或格式的个别文件。块存储系统中的各逻辑块可含有若干不同文件(或若干文件的部分),或相反地,单一数据文件可分散于若干逻辑块之间,从而使得难以分离特定文件类型以用于具有最适合于压缩所述特定类型的数据的算法的个别和针对性压缩。另外,逻辑块未必含有关于各个别数据文件的开始点和结束点的信息或关于输入数据格式的信息。类似地,关于占据一或多个块的文件的标识的重要元数据可能不存在于特定块层级中。因此,传统的块系统将需要对任何块的数据进行采样并执行复杂的数学计算来测量块的潜在可压缩性。这导致额外的性能损失。另外,在基于块的驱动器上压缩信息需要大量背景活动以追踪目标文件的各块的位置,将那些位置压缩并汇编到新的块中,随后更新映射表以展示所压缩和所存储的信息的新位置,所述位置可能在压缩过程中已大体上改变。键值存储系统与常规的块存储系统的不同在于其不含有相同大小的逻辑块,而替代地将数据存储为不同大小的值,其中所述值表示特定段的数据或文件。键值存储器使用指向存储于其中的特定值的键。键可含有关于所存储数据的有效信息,所述信息包含逻辑地址、衍生于数据的散列值、数据格式等。所需要的是改进的压缩驱动器,所述改进的压缩驱动器利用键值存储系统的组织以便允许不同压缩,所述不同压缩改进总体存储压缩。举例来说,所需要的是能够确定在压缩之前预期是否良好压缩率从而避免无用压缩和性能损失的驱动器。另外,所需要的是不仅能够对主机数据执行压缩且还能基于数据的性质、驱动器能力和/或终端用户服务质量(QualityofService,QoS)需求来确定何时且如何最好地压缩这一数据(如果有的话)的驱动器。本
技术介绍
部分中所公开的以上信息仅用于增进对本公开的
技术介绍
的理解,且因此可含有不构成现有技术的信息。
技术实现思路
本专利技术的实施例包含一种具有用于预测数据的可压缩性的压缩预测器和用于基于所述预测来压缩数据的压缩器的压缩系统、一种包含所述压缩系统的驱动器以及一种用于预测和压缩数据的方法。举例来说,本专利技术的实施例包含一种压缩系统,所述压缩系统包含:一或多个可压缩性输入;压缩预测器,配置成基于一或多个可压缩性输入来预测数据的可压缩性;压缩器,配置成压缩数据;以及一或多个压缩输入。压缩预测器或压缩器中的至少一个配置成基于一或多个压缩输入来确定如何压缩数据。一或多个可压缩性输入包含对象扩展名字典、对象签名字典以及熵估算算法库中的至少一个。一或多个压缩输入包含服务质量简档、装置性能简档以及压缩算法性能表中的至少一个。其它实施例包含一种存储驱动器,所述存储驱动器包含压缩系统。另外,实施例包含一种压缩存储驱动器上的数据的方法,其中所述方法包含:基于一或多个可压缩性输入来预测驱动器上的数据的可压缩性;基于一或多个压缩输入来确定如何压缩数据;以及基于确定如何压缩数据来压缩数据。一或多个可压缩性输入包含对象扩展名字典、对象签名字典以及熵估算算法库中的至少一个。一或多个压缩输入包含服务质量简档、装置性能简档以及压缩算法性能表中的至少一个。附图说明结合附图通过参考所综述的以下详细描述,其它特征和方面将变得显而易见且将通过其来最好地理解。在附图中:图1是示意性地示出根据示范性实施例的压缩驱动器的流程图。图2是示出在特定处理量下的某些压缩算法的相应压缩率的表。图3是示出使用图1的压缩驱动器来预测和压缩数据的方法的流程图。附图标号说明1:键;2:值/给定值;3:压缩预测器;4:对象扩展名字典/对象扩展名目录;5:对象签名字典;6:熵估算算法库;7:压缩器;10:压缩驱动器;11:接收开关;12:出口开关/多路复用器;13:输出;14:QoS简档;15:装置性能简档;16:压缩算法性能表;17:压缩算法库;21:预测;22:确定;23:压缩;24:输出;25:存储;26:箭头。具体实施方式本文中所描述的电子装置或电气装置和/或根据本专利技术的实施例的任何其它相关装置或组件可利用任何合适的硬件、固件(例如专用集成电路)、软件,或软件、固件以及硬件的组合来实施。举例来说,这些装置的各种组件可形成于一个集成电路(integratedcircuit,IC)芯片上或形成于单独IC芯片上。另外,这些装置的各种组件可实施于柔性印刷电路膜、载带封装(tapecarrierpackage;TCP)、印刷电路板(printedcircuitboard;PCB)上,或形成于一个基底上。另外,这些装置的各种组件可以是运行于一或多个处理器上、一或多个计算装置中,执行计算机程序指令且与其它系统组件交互以执行本文中所描述的各种功能的进程或线程。计算机程序指令存储于可使用例如随机存取存储器(randomaccessmemory;RAM)的标准存储器装置在计算装置中实施的存储器中。计算机程序指令还可存储于例如CD-ROM、闪存驱动器或类似物的其它非暂时性计算机可读介质中。此外,本领域的技术人员应认识到可在不脱离本专利技术的示范性实施例的精神和范围的情况下,将各种计算装置的功能组合或集成到单一计算装置中,或可使特定计算装置的功能分布于一或多个其它计算装置上。本专利技术的实施例涉及具有改进可压缩性的固态驱动器。最初,对存储于驱动器上的文件的特征进行分析来预测各文件能够受压缩的程度(即,文件的可压缩性)。一旦得到关于可压缩性的预测,将作出关于是否压缩数据的决策。这个决策可基于所预测的数据的可压缩性以及其它因素,例如服务质量(QoS)需求和目前装置能力。如果作出压缩的决策,那么随后作出关于如何压缩数据的判定,考虑例如数据和装置的特征以及QoS需求的因素来确定在当前条件下哪一算法将最适于使用,以优化总体性能。图1是示出根据一个实施例的压缩驱动器10的流程图。这个实施例中的驱动器10是键值存储驱动器,以便利用存储于驱动器10上所存储的数据的键本文档来自技高网
...

【技术保护点】
1.一种存储驱动器上的压缩系统,其特征在于,包括:一或多个可压缩性输入;压缩预测器,配置成基于所述一或多个可压缩性输入来预测数据的可压缩性;压缩器,配置成压缩所述数据;一或多个压缩输入,其中所述压缩预测器或所述压缩器中的至少一个配置成基于所述一或多个压缩输入来确定如何压缩所述数据;其中所述一或多个可压缩性输入包括对象扩展名字典、对象签名字典以及熵估算算法库中的至少一个;且其中所述一或多个压缩输入包括服务质量简档、装置性能简档以及压缩算法性能数据库中的至少一个。

【技术特征摘要】
2017.06.20 US 62/522,423;2017.08.28 US 15/688,7791.一种存储驱动器上的压缩系统,其特征在于,包括:一或多个可压缩性输入;压缩预测器,配置成基于所述一或多个可压缩性输入来预测数据的可压缩性;压缩器,配置成压缩所述数据;一或多个压缩输入,其中所述压缩预测器或所述压缩器中的至少一个配置成基于所述一或多个压缩输入来确定如何压缩所述数据;其中所述一或多个可压缩性输入包括对象扩展名字典、对象签名字典以及熵估算算法库中的至少一个;且其中所述一或多个压缩输入包括服务质量简档、装置性能简档以及压缩算法性能数据库中的至少一个。2.根据权利要求1所述的存储驱动器上的压缩系统,其中所述一或多个可压缩性输入至少包括所述对象扩展名字典。3.根据权利要求1所述的存储驱动器上的压缩系统,其中所述一或多个可压缩性输入至少包括所述对象签名字典。4.根据权利要求1所述的存储驱动器上的压缩系统,其中所述一或多个压缩输入至少包括所述服务质量简档。5.根据权利要求1所述的存储驱动器上的压缩系统,其中所述压缩预测器配置成基于两个或大于两个可压缩性输入来预测所述数据的所述可压缩性,且其中所述两个或大于两个可压缩性输入包括所述对象扩展名字典、所述对象签名字典、所述熵估算算法库、所述服务质量简档以及所述装置性能简档中的至少两个。6.根据权利要求1所述的存储驱动器上的压缩系统,其中所述压缩器配置成基于两个或大于两个压缩输入来确定如何压缩所述数据,且其中所述两个或大于两个压缩输入包括所述服务质量简档、所述装置性能简档以及所述压缩算法性能表中的至少两个。7.一种压缩存储驱动器上的数据的方法,其特征在于,所述方法包括:基于一或多个可压缩性输入来预测所述存储驱动器上的所述数据的可压缩性,其中所述一或多个可压缩性输入包括对象扩展名字典、对象签名字典以及熵估算算法库中的至少一个;基于一或多个压缩输入来确定如何压缩所述数据,其中所述一或多个压缩输入包括服务质量简档、装置性能简档以及压缩算法性能表中的至少一个;以及基于如何压缩所述数据的所述确定来压缩所述数据。8.根据权利要求7所述的压缩存储驱动器上的数据的方法,其中所述存储驱动器是具有键以及值的键值存储驱动器。9.根据权利要求8所述的压缩存储驱动器上的...

【专利技术属性】
技术研发人员:奇亮奭李勇锡杰森·马蒂诺
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:韩国,KR

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1