[发明专利]一种写请求数据压缩方法、系统、终端及存储介质在审
申请号: | 202010590044.X | 申请日: | 2020-06-24 |
公开(公告)号: | CN111857574A | 公开(公告)日: | 2020-10-30 |
发明(设计)人: | 刘文国 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 济南舜源专利事务所有限公司 37205 | 代理人: | 孙玉营 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 请求 数据压缩 方法 系统 终端 存储 介质 | ||
本发明提供一种写请求数据压缩方法、系统、终端及存储介质,包括:将写请求数据保存至第一存储并将所述写请求的数据存储地址和数据长度保存至顺序化链表;根据所述顺序化链表将存储地址相接的写请求合并;获取第一存储的空闲空间,若所述空闲空间低于预设阈值,则逐条将第一存储中数据长度最大的写请求数据压缩转移至第二存储,直至所述空闲空间不低于预设阈值;将转移至第二存储的写请求数据对应的写请求信息从顺序化链表清除。本发明能够减少访问磁盘的IO次数,并减少存储空间的消耗,从而能够提高实时压缩存储系统的性能和空间利用率。
技术领域
本发明涉及存储技术领域,具体涉及一种写请求数据压缩方法、系统、终端及存储介质。
背景技术
当今时代,数据的指数级增长对存储容量的要求越来越高。通常有两种途径来应对存储容量的增长,一个是扩展存储容量,但这会带来成本的增加;另一个是对数据进行压缩,减少存储容量的消耗,节省成本。实时压缩存储系统在数据写入存储设备之前对数据进行压缩,不仅减少了存储空间的占用,更能进一步减少对存储设备(比如磁盘)的访问,从而提高存储系统的性能。
当前的实时压缩存储系统,将内存中同一时间窗口内的用户写数据压缩后写向存储设备,这些用户写数据通常包含随机写数据和顺序写数据两种。为了有效利用存储空间,实时压缩存储系统往往将压缩后的用户写数据组成固定长度的数据块写到存储设备上,而在同一个数据块中为了区别逻辑地址不连续的用户写数据(即随机写数据),往往需要添加相应的元数据和填充数据,这样当顺序写数据越少时,组成一个数据块的随机写数据越多,相应的元数据和填充数据占用的空间就越多。除此之外,随机写数据越多,访问磁盘的IO次数、需要执行的压缩次数和解压缩次数也越多,造成了性能下降。
发明内容
针对现有技术的上述不足,本发明提供一种写请求数据压缩方法、系统、终端及存储介质,以解决上述技术问题。
第一方面,本发明提供一种写请求数据压缩方法,包括:
将写请求数据保存至第一存储并将所述写请求的数据存储地址和数据长度保存至顺序化链表;
根据所述顺序化链表将存储地址相接的写请求合并;
获取第一存储的空闲空间,若所述空闲空间低于预设阈值,则逐条将第一存储中数据长度最大的写请求数据压缩转移至第二存储,直至所述空闲空间不低于预设阈值;
将转移至第二存储的写请求数据对应的写请求信息从顺序化链表清除。
进一步的,所述根据顺序化链表将存储地址相接的写请求合并,包括:
将新接收的写请求与顺序化链表中保存的历史写请求进行存储地址匹配,所述存储地址包括起始地址和结束地址,所述结束地址根据写请求数据的起始地址和数据长度计算得到;
若存在与新接收的写请求的存储地址匹配的历史写请求,则在所述顺序化链表中将新接收的写请求信息合并至匹配历史写请求。
进一步的,所述将第一存储中数据长度最大的写请求数据压缩转移至第二存储,包括:
在顺序化链表中筛选出数据长度最大的写请求作为目标请求并读取目标请求的存储地址;
根据所述存储地址从第一存储读取相应的目标写请求数据,将目标写请求数据压缩后保存至第二存储,并从第一存储删除所述目标写请求数据;
将所述目标请求的存储地址更新至请求链表,所述请求链表保存所有写请求的信息。
进一步的,所述方法还包括:
根据读请求的请求信息,从请求链表获取请求数据的数据存储地址;
根据所述数据存储地址返回读请求访问的数据。
第二方面,本发明提供一种写请求数据压缩系统,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010590044.X/2.html,转载请声明来源钻瓜专利网。