一种缩减数据占用空间的云存储方法

文档序号:7553869阅读:344来源:国知局
专利名称:一种缩减数据占用空间的云存储方法
技术领域
本发明涉及云存储技术领域,特别是涉及一种缩减数据占用空间的云存储方法。
背景技术
面对数据的急剧膨胀,企业需要不断购置大量的存储设备来应对不断增长的存储需求。然而,单纯地提高存储容量不能从根本解决问题。因此提出了高效存储理念,它旨在缓解存储系统的空间增长问题,缩减数据占用空间,简化存储管理,最大程度地利用已有资源,降低成本。目前业界公认的五项高效存储技术分别是数据压缩、重复数据删除、自动精简配置、自动分层存储和存储虚拟化。目前,数据压缩和重复数据删除是实现数据缩减的两种关键技术。数据压缩技术通过对数据重新编码来降低冗余度,而重复删除技术侧重于删除重复的数据块。数据压缩与重复数据删除两种技术具有不同层面的针对性,将两种技术结合起来,可以实现更高的数据缩减比例。

发明内容
发明目的:本发明提供了一种缩减数据占用空间的云存储方法,通过将数据压缩技术与重复数据删除技术相结合,先删除重复数据再数据压缩的方法,实现更高的数据缩减比例,获得更高的数据压缩率和性能。技术方案:一种缩减数据占用空间的云存储方法,包括如下步骤:
从终端上传数据到云存储服务器;
用固定尺寸划分算法的块检测技术将重复的数据删除;基于固定尺寸划分算法的块检测技术是将数据划分为很多数据块,然后计算检测重复数据块,将相同的数据块只保留唯一副本,其他重复副本用指向唯一副本的指针替换,计算检测重复数据块的核心是数据指纹算法。数据存入数据块后,再用LZW数据压缩技术降低基本数据块体积,实现数据压缩。本发明采用上述技术方案,具有以下有益效果:本发明提供了一种缩减数据占用空间的云存储方法,通过将数据压缩技术与重复数据删除技术相结合,先删除重复数据再数据压缩的方法,实现更高的数据缩减比例,获得更高的数据压缩率和性能。


图1为本发明实施例的方法流程 图2为本发明实施例的删除重复数据流程 图3为本发明实施例的LZW算法压缩数据流程 图4为本发明实施例的LZW算法解压数据流程图。
具体实施方式
下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。一种缩减数据占用空间的云存储方法,包括:终端上传数据到云存储服务器;采用基于FSP算法的块检测技术将重复的数据删除;数据存入数据块后,再采用数据压缩技术降低基本数据块体积。基于固定尺寸划分算法(FSP)的相同数据块检测技术是使用固定大小的分块策略在存储系统中识别相同数据的方法。基于FSP算法的块检测技术是一种“智能压缩”方法,是将数据划分为很多数据块,然后计算检测重复数据块,将相同的数据块只保留唯一的一个副本,其他重复副本用指向唯一副本的指针替换,计算检测重复数据块的核心是数据指纹算法,本发明采用MD5算法实现数据指纹计算。LZff数据压缩技术可压缩和解压缩任何类型的数据,它处理可预测性较小的数据且通常得到的文件格式最小。在它对数据的编码过程中建立一个符号表,如果读到已经编码的数据块,则可用编码符号来代表,把原始数据转化成一系列符号标志或代码,这样做数据量会大为减少。LZW是完全可逆的,所有信息都保留了,其符号表在压缩和解压缩过程中完全自生成。实现采用扩12位的可变长编码,允许压缩算法表示0-4096的数字,所以符号表中最多可有4096项。这个串表对不同数据是不一样的,但不需要保留给解压缩程序,解压缩过程中能自动建立和压缩过程中相同的符号表。MD5算法为计算机广泛使用的一种哈希算法。该算法是将任意长度的输入信息经过复杂的线性变换,生成一个唯一的长为128位(bits)的散列值,即数字指纹。由于任意两段明文加密以后得到相同的密文,如果加密特定的数据,得到的密文一定是相同的,因此可以采用MD5算法计算指纹,判别数据是否重复。所述重复数据删除过程如下:
1)将数据流分成固定的数据块;
2)将每个数据块生成一个独特的指纹;
3)如果新数据块的指纹与设备散列索引中的某个散列匹配,仅存入指针,并指向存储相同数据块的原始位置。否则,如果数据块是唯一的,就将数据块的指纹存入索引中。所述LZW数据压缩过程如下:
1)初始化符号表;
2)读取第一个字符K,前缀字串P=K;
3)对字符流中每个字符重复做4、步;
4)读入下一个字符K;
5)假如K是“结束”符,输出K的代码,然后算法结束;
6)假如P+K在符号表中,则P=P+K,转步4;
7)写符号表中对应P的代码到代码流;
8)将Ρ+Κ加入符号表,符号表增加一项;
9)Ρ=Κ,转步5。相对于压缩过程,LZff算法的解压过程关键在于其初始化与压缩程序一致,解压过程关键在于其初始化的符号表几乎与压缩过程同步。
LZff数据解压过程如下:
1)初始化符号表;
2)输入第一个代码并赋值给备用字符串O;
3)输出字符串O;
4)对代码流中每个代码重复做5、步;
5)读取一个代码Code;
6)假如Code是“结束”码,则算法结束;
7)假如Code在符号表中,则输出符号表中对应Code项的字串N,将符号表中对应上次读取的代码OldCode项的字串O和符号表中对应Code项的字串N首字符连结成的字串加入符号表,转步9 ;
8)输出符号表中对应上次读取的代码OldCode项的字串O和该字串首字符连结成的字串,将此结果字串加入符号表中;
9)0=N,转步 5。
权利要求
1.一种缩减数据占用空间的云存储方法,其特征在于,包括如下步骤: 从终端上传数据到云存储服务器; 用固定尺寸划分算法的块检测技术将重复的数据删除; 数据存入数据块后,再用LZW数据压缩技术降低基本数据块体积,实现数据压缩。
2.如权利要求1所述的一种缩减数据占用空间的云存储方法,其特征在于,所述基于固定尺寸划分算法的块检测技术是将数据划分为很多数据块,然后计算检测重复数据块,将相同的数据块只保留唯一副本,其他重复副本用指向唯一副本的指针替换,计算检测重复数据块的核心是数据指纹算法。
3.如权利要求2所述的一种缩减数据占用空间的云存储方法,其特征在于,所述数据指纹算法采用MD5算法。
全文摘要
本发明公开了一种缩减数据占用空间的云存储方法,包括如下步骤从终端上传数据到云存储服务器;用固定尺寸划分算法的块检测技术将重复的数据删除;数据存入数据块后,再用LZW数据压缩技术降低基本数据块体积,实现数据压缩。本发明通过将数据压缩技术与重复数据删除技术相结合,先删除重复数据再数据压缩的方法,实现更高的数据缩减比例,获得更高的数据压缩率和性能。
文档编号H04L29/08GK103152430SQ20131009277
公开日2013年6月12日 申请日期2013年3月21日 优先权日2013年3月21日
发明者许峰, 刘璇, 张云飞, 周文欢 申请人:河海大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1