[发明专利]一种基于数据压缩和数据去冗协同的存储优化方法有效
申请号: | 201510508298.1 | 申请日: | 2015-08-18 |
公开(公告)号: | CN105022593B | 公开(公告)日: | 2017-09-26 |
发明(设计)人: | 夏耐;姜承祥 | 申请(专利权)人: | 南京大学 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F12/06 |
代理公司: | 江苏圣典律师事务所32237 | 代理人: | 胡建华 |
地址: | 210023 江苏省南*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 数据压缩 数据 协同 存储 优化 方法 | ||
技术领域
本发明涉及计算机数据处理领域,特别是一种基于数据压缩和数据去冗协同的存储优化方法。
背景技术
提高物理介质的有限的容量的利用率,当前有两种主流的方法,分别为数据去冗余(Data Deduplication)和数据压缩(Date Compression)。其中数据去冗余是通过对数据块进行扫描检查,以hash值作为特征组织数据块,发现多个相同的数据块,通过间接引用的方式合并成一块,进而节省整个存储的空间,。而数据压缩依赖于现有的数据压缩算法(如LZW),尝试压缩数据块,如果压缩率高于阈值,就保存压缩后的数据块,并释放原来数据块空间,以达到节省空间的目的。数据压缩技术相比较数据块去冗技术在节约存储资源上有不同的特性差异:前者相对反应迅速,有较稳定的数据压缩比,;而后者需要找到两个完全相同的数据块,因此必须扫描所有数据块,扫描过程持续时间长,且在不同的场景下数据压缩比有较大差异,在某些场景下有前者无法比拟的压缩比,然在另外一些场景下则几乎没有压缩效果。因此,实际的应用中,这两种方法无法互相替代。在考虑压缩速度、计算代价、压缩比等多种因素的情况下,为了达到更高效率的存储压缩,需要考虑这两种方法在实际应用中的协同性问题。实际中要同时使用这两种方法并不能简单的让它们先后执行。如果单纯的先用数据压缩,再进行数据去冗余,会导致节约数据空间效果没有达到最好。而单纯的先进行数据去冗余,再进行数据压缩又不能保证时间效率。在同时使用这两种方法时需要一种方法来协调调度它们,在进行数据去冗余前需要做出判断,只有判断认为消耗时间进行数据去冗余是有价值的,再进行数据去冗余,否则进行数据压缩。
发明内容
发明目的:本发明所要解决的技术问题是当前数据压缩机制与数据去冗余机制并不协同工作的缺陷,用一种基于数据压缩和数据去冗协同的存储优化方法来协调调度,在进行数据去冗余前需要做出判断,只有判断认为消耗时间进行数据去冗余是有价值的,再进行数据去冗余,否则进行数据压缩。
为了解决上述技术问题,本发明公开了一种基于数据压缩和数据去冗协同的存储优化方法,包括以下步骤:
步骤1,假设计算机在某个情况下需要回收释放存储介质(内存、磁盘)中N个数据块的空间来存储更多的新数据,候选的可用于释放的数据块集合DSet包含M个数据块(M>N),则此次处理期望释放出的数据存储比率S=N/M。设置采样比率阈值R,0%<R≤100%,数据去冗余执行百分比阈值P,0%<P≤100%;
步骤2,使用系统提供的随机发生器,产生随机种子,填入伪随机算法产生一个数据块随机扫描序列Block1、Block2、…BlockM;
步骤3,选择一个快速的去冗扫描的哈希算法H,对前M×R个数据块Block1、Block2、…BlockM×R进行扫描,计算每个数据块的哈希值H(Block1)、H(Block2)…H(BlockM×R);
步骤4,将所有数据块哈希值,逐个插入到查找数据结构;在插入过程中,如果有相同的哈希值,则进一步判断是否哈希函数为加密强度哈希算法(如MD5、SHA1),如果是加密强度,则将其中一个数据块作为冗余数据块处理,并跳转至步骤6;如果不是加密强度则继续步骤5;如果没有相同的哈希值,则将该哈希值作为查找数据结构的一个键值插入到结构中;
步骤5,逐字节比对哈希值相同的数据块内容,如果数据块内容也相同,那么将其中一个数据块作为冗余数据块处理;如果数据块内容不相同,则将该哈希值作为查找数据结构的一个键值插入到结构中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510508298.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种图形界面轮盘控件的实现方法及系统
- 下一篇:电子装置及其操作方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置