一种数据存储方法、装置及系统制造方法及图纸

技术编号:15822371 阅读:41 留言:0更新日期:2017-07-15 04:40
本发明专利技术公开了一种数据存储方法,包括以下步骤:将待存储的数据划分为多个数据块;将数据块的字节与预设值进行比较,当数据块的字节小于等于预设值时,计算该数据块的MD5值,当数据块的字节大于预设值时,根据预设长度选取数据块前端和后端的内容,计算该内容MD5值;将计算的MD5值与指纹库进行匹配,将在指纹库中没有相应匹配项的MD5值对应的数据块的字节相加;根据相加值选择与相加值匹配的存储数据库,将该相加值对应的数据块存储至选择的存储数据库,并接收该存储数据库返回的索引信息。本发明专利技术还公开一种数据存储装置和系统。通过上述方式,本发明专利技术能够高效存储数据。

【技术实现步骤摘要】
一种数据存储方法、装置及系统
本专利技术涉及数据存储领域,特别是涉及一种数据存储方法、装置及系统。
技术介绍
随着数据的爆炸式增长,大量的数据需被存储,数据库是数据存储的主要方式。对于存储的数据,为便于高效地进行查找,通常利用索引信息进行查找,但索引信息需占用一定的存储空间,不利于数据库的充分利用。对于数据库中存储的数据,存在大量的重复数据,该重复数据不仅占用存储空间,还降低存储效率。如何充分利用数据库的存储空间、提高存储效率,是目前数据存储领域亟待解决的问题之一。
技术实现思路
本专利技术主要解决的技术问题是提供一种数据存储方法、装置及系统,可充分利用数据库的存储空间,且提高存储效率。为解决上述技术问题,本专利技术提供一种数据存储方法,包括以下步骤:将待存储的数据划分为多个数据块;将数据块的字节与预设值进行比较,当数据块的字节小于等于预设值时,计算该数据块的MD5值,当数据块的字节大于预设值时,根据预设长度选取数据块前端和后端的内容,计算该内容MD5值;将计算的MD5值与指纹库进行匹配,将在指纹库中没有相应匹配项的MD5值对应的数据块的字节相加;根据相加值选择与相加值匹配的存储数据库,将该相加值对应的数据块存储至选择的存储数据库,并接收该存储数据库返回的索引信息。其中,供选择的存储数据库的数量为1个或1个以上。其中,与相加值匹配的存储数据库为存储空间大于且最接近相加值的存储数据库。其中,指纹库包括存储数据库已存储的数据块的MD5值。其中,索引信息包括数据块的存储路径。为解决上述技术问题,本专利技术提供一种数据存储装置,包括:划分模块,用于将待存储的数据划分为多个数据块;计算模块,用于将数据块的字节与预设值进行比较,当数据块的字节小于等于预设值时,计算该数据块的MD5值,当数据块的字节大于预设值时,根据预设长度选取数据块前端和后端的内容,计算该内容MD5值;相加模块,用于将计算的MD5值与指纹库进行匹配,将在指纹库中没有相应匹配项的MD5值对应的数据块的字节相加;存储模块,用于根据相加值选择与相加值匹配的存储数据库,将该相加值对应的数据块存储至选择的存储数据库,并接收该存储数据库返回的索引信息。其中,供选择的存储数据库的数量为1个或1个以上;与相加值匹配的存储数据库为存储空间大于且最接近相加值的存储数据库。其中,指纹库包括存储数据库已存储的数据块的MD5值。其中,索引信息包括数据块的存储路径。为解决上述技术问题,本专利技术提供一种数据存储系统,包括:主控数据库,主控数据库包括上述数据存储装置;存储数据库,用于提供数据块的存储空间。本专利技术的有益效果是:区别于现有技术的情况,本专利技术的数据存储方法包括以下步骤:将待存储的数据划分为多个数据块;将数据块的字节与预设值进行比较,当数据块的字节小于等于预设值时,计算该数据块的MD5值,当数据块的字节大于预设值时,根据预设长度选取数据块前端和后端的内容,计算该内容MD5值;将计算的MD5值与指纹库进行匹配,将在指纹库中没有相应匹配项的MD5值对应的数据块的字节相加;根据相加值选择与相加值匹配的存储数据库,将该相加值对应的数据块存储至选择的存储数据库,并接收该存储数据库返回的索引信息。通过上述方法,可判断待存储的数据是否已经存储,对于已经存储的数据不再进行存储,此方式可避免数据的重复存储,节省存储空间,提高存储效率,同时将索引信息放置在存储数据库外,可充分利用存储数据库的存储空间。附图说明图1是本专利技术数据存储方法一实施例的流程示意图;图2是本专利技术数据存储装置一实施例的结构示意图。具体实施方式下面结合附图和实施例对本专利技术进行详细说明。请参阅图1,图1是本专利技术数据存储方法一实施例的流程示意图,如图1所示,包括以下步骤:S11,将待存储的数据划分为多个数据块。本实施例的方法由主控数据库实施,在划分数据块时,数据块大小为变长。S12,将数据块的字节与预设值进行比较,当数据块的字节小于等于预设值时,计算该数据块的MD5值,当数据块的字节大于预设值时,根据预设长度选取数据块前端和后端的内容,计算该内容MD5值。在本实施例中,选取的数据块前端和后端的内容的长度等于预设长度,在选取过程中,数据块前端选取固定长度的内容,数据块后端选取固定长度的内容,该两个固定长度均为预先设置好的长度。在本实施例中,对于字节大于预设值的数据块,其MD5值的计算方式可减少计算时间,提高数据存储效率。S13,将计算的MD5值与指纹库进行匹配,将在指纹库中没有相应匹配项的MD5值对应的数据块的字节相加。在本实施例中,当计算的MD5值在指纹库中存在相应的匹配项时,则判断该MD5值对应的数据块为重复数据块,则不再对该数据块进行存储。S14,根据相加值选择与相加值匹配的存储数据库,将该相加值对应的数据块存储至选择的存储数据库,并接收该存储数据库返回的索引信息。在本实施例中,供选择的存储数据库的数量为1个或1个以上。与相加值匹配的存储数据库具体为存储空间大于且最接近相加值的存储数据库,如:当有两个存储数据库的存储空间大于相加值时,选择最接近相加值的存储数据库作为存储对象。需要指出的是,当只有一个存储数据库的存储空间大于相加值时,选择该存储数据库作为存储对象。上述选择存储数据库的方式可充分利用存储空间。在本实施例中,指纹库包括存储数据库已存储的数据块的MD5值。索引信息包括数据块的存储路径。综上所述,本实施例的数据存储方法具有以下特点:判断待存储的数据是否已经存储,对于已经存储的数据不再进行存储,此方式可避免数据的重复存储,节省存储空间,提高存储效率,同时将索引信息放置在存储数据库外,可充分利用存储数据库的存储空间。请参阅图2,图2是本专利技术数据存储装置一实施例的结构示意图,如图2所示,包括:划分模块21、计算模块22、相加模块23及存储模块24。上述各模块的功能具体如下:划分模块21用于将待存储的数据划分为多个数据块;计算模块22用于将数据块的字节与预设值进行比较,当数据块的字节小于等于预设值时,计算该数据块的MD5值,当数据块的字节大于预设值时,根据预设长度选取数据块前端和后端的内容,计算该内容MD5值;相加模块23用于将计算的MD5值与指纹库进行匹配,将在指纹库中没有相应匹配项的MD5值对应的数据块的字节相加;存储模块24用于根据相加值选择与相加值匹配的存储数据库,将该相加值对应的数据块存储至选择的存储数据库,并接收该存储数据库返回的索引信息。图2所示装置位于主控数据库,在本实施例中,划分模块21划分数据块时,数据块大小为变长。在本实施例中,选取的数据块前端和后端的内容的长度等于预设长度,在选取过程中,数据块前端选取固定长度的内容,数据块后端选取固定长度的内容,该两个固定长度均为预先设置好的长度。在本实施例中,对于字节大于预设值的数据块,其MD5值的计算方式可减少计算时间,提高数据存储效率。在本实施例中,当计算的MD5值在指纹库中存在相应的匹配项时,则不再对该MD5值对应的数据块进行存储。在本实施例中,供选择的存储数据库的数量为1个或1个以上。与相加值匹配的存储数据库具体为存储空间大于且最接近相加值的存储数据库,如:当有两个存储数据库的存储空间大于相加值时,选择最接近相加值的存储数据库作为存储对象。需要指出的是,当只有一个存本文档来自技高网...
一种数据存储方法、装置及系统

【技术保护点】
一种数据存储方法,其特征在于,包括以下步骤:将待存储的数据划分为多个数据块;将所述数据块的字节与预设值进行比较,当数据块的字节小于等于预设值时,计算该数据块的MD5值,当数据块的字节大于预设值时,根据预设长度选取数据块前端和后端的内容,计算该内容MD5值;将计算的MD5值与指纹库进行匹配,将在所述指纹库中没有相应匹配项的MD5值对应的数据块的字节相加;根据相加值选择与所述相加值匹配的存储数据库,将该相加值对应的数据块存储至选择的存储数据库,并接收该存储数据库返回的索引信息。

【技术特征摘要】
1.一种数据存储方法,其特征在于,包括以下步骤:将待存储的数据划分为多个数据块;将所述数据块的字节与预设值进行比较,当数据块的字节小于等于预设值时,计算该数据块的MD5值,当数据块的字节大于预设值时,根据预设长度选取数据块前端和后端的内容,计算该内容MD5值;将计算的MD5值与指纹库进行匹配,将在所述指纹库中没有相应匹配项的MD5值对应的数据块的字节相加;根据相加值选择与所述相加值匹配的存储数据库,将该相加值对应的数据块存储至选择的存储数据库,并接收该存储数据库返回的索引信息。2.根据权利要求1所述的数据存储方法,其特征在于,供选择的存储数据库的数量为1个或1个以上。3.根据权利要求2所述的数据存储方法,其特征在于,与所述相加值匹配的存储数据库为存储空间大于且最接近所述相加值的存储数据库。4.根据权利要求3所述的数据存储方法,其特征在于,所述指纹库包括存储数据库已存储的数据块的MD5值。5.根据权利要求4所述的数据存储方法,其特征在于,所述索引信息包括数据块的存储路径。6.一种数据存储装置,其特征在于,包括:划分模块,用于将待存储的数据划分为...

【专利技术属性】
技术研发人员:范世铭刘彪杰
申请(专利权)人:广州硕点电子科技有限公司
类型:发明
国别省市:广东,44

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

1