[发明专利]一种清洗比对入库方法在审
申请号: | 201611207614.2 | 申请日: | 2016-12-23 |
公开(公告)号: | CN106844480A | 公开(公告)日: | 2017-06-13 |
发明(设计)人: | 林殷;安西民;李垚 | 申请(专利权)人: | 航天星图科技(北京)有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京安博达知识产权代理有限公司11271 | 代理人: | 徐国文 |
地址: | 101399 北京市顺义区国*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 清洗 入库 方法 | ||
本发明公开了一种清洗比对入库方法,该方法由入库服务器对入库的数据文件进行扫描,选择不同的分块方式对数据文件进行分块,从中选择中重复数据量大的分块方式存储入库。该方法在清洗比对入库时,以较小的粒度进行清洗比对,提高了重复数据的发现率,降低了数据存储的占用空间。
【技术领域】
本发明属于计算机和互联网领域,具体的,涉及一种清洗比对入库方法。
【背景技术】
近年来,随着计算机和互联网技术的快速发展,我们处在了一个信息爆炸的时代,信息爆炸带来了海量的数据信息,而海量的数据信息给存储系统带来了极大的压力。虽然现在用于存储的计算机越来越多,性能越来越好,但是由于存储介质本身IO速度的限制,面对海量数据时仍然力不从心。
因此,现有技术中,海量数据存储的第一步,是检测和消除其中的相同数据,即冗余数据,在新数据入库时,通过对新数据和已存储数据的比对,清洗掉重复的数据,只给其保留一个指针,指向该重复数据已存储的存档。这种做法一方面是减少存储空间和IO带宽的占用,另一方面是减少数据处理量。因此,海量数据存储时的清洗比对入库已经是大规模数据存储系统的必备技术。
但是,现有技术中的清洗比对入库方法通常只是比较存储文件的哈希值来检测重复数据。但是单纯以文件为单位来检测重复,其粒度太大,不能处理相似文件中的部分相同数据,因此需要考虑减小粒度,能够尽可能检测相似文件间的部分重复数据。
【发明内容】
为了解决现有技术中的上述问题,本发明提出了一种清洗比对入库方法,其技术方案如下:
一种清洗比对入库方法,该方法包括如下步骤:
(1)入库服务器接收需要存储入库的数据文件;
(2)所述入库服务器检查所述数据文件的长度L,如果L小于预定义的最小数据块长度MinBlockLength,则提取该数据文件的最后一个字节B,转到步骤3。如果L≥MinBlockLength,则转到步骤5;
(3)预先给系统中的256个存储服务器编号,分别命名为Server(i),其中0≤i≤255,入库服务器将该数据文件发送到Server(B),同时保存该数据文件的相关信息;
(4)所述Server(B)计算该数据文件的哈希值,根据该哈希值判断该数据文件是否已存储在服务器中,如果已存储,仅为该数据文件保留一个指针,指向已存储的相同数据;如果并未存储,则Server(B)存储该数据文件和其哈希值,方法结束;
(5)所述入库服务器设置初始的分块向量V=0;
(6)所述入库服务器从该数据文件的第MinBlockLength个字节开始向后扫描,当扫描某个字节等于分块向量时,记录该字节的位置P1,然后再从P1+MinBlockLength的位置开始扫描,寻找并记录下一个等于分块向量的字节位置,如此反复,直到数据文件的末尾;
(7)根据步骤6的所记录的位置,将每个位置作为一个数据块的结尾,对数据文件进行分块,由此得到了KV个数据块;
(8)分块向量V增加1,如果V≤255,则返回步骤6,否则继续步骤9;
(9)对K0到K255按照从大到小进行排序,获取排在最前的5个值,假设为KV1,KV2,KV3,KV4,KV5;
(10)按照V1到V5五个分块向量对该数据文件的分块结果,将各个数据块按照其结尾字节发送到相应的存储服务器进行重复性检测;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于航天星图科技(北京)有限公司,未经航天星图科技(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611207614.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种腿部肌肉锻炼装置
- 下一篇:一种位姿可调下肢康健训练装置