[发明专利]一种应用在聚合文件上的碎片整理方法有效
申请号: | 201611265016.0 | 申请日: | 2016-12-30 |
公开(公告)号: | CN106649860B | 公开(公告)日: | 2020-09-18 |
发明(设计)人: | 张子奇 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F16/17 | 分类号: | G06F16/17;G06F16/16 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 罗满 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用 聚合 文件 碎片 整理 方法 | ||
本发明公开了一种应用在聚合文件上的碎片整理方法,包括预先获取聚合文件并将聚合文件分为多个数据块,将各数据块分为两个部分,第一部分用于添加各文件碎片在数据块中的位图索引信息,第二部分用于存储各文件碎片;当有文件碎片存入数据块或从数据块中删除时,在数据块中记录数据块的位图索引信息;通过位图索引信息确定聚合文件的当前使用率;当聚合文件的当前使用率达到预定使用率时,启动碎片整理。由此可见,通过本方法可以通过每个数据块的位图索引信息可以快速确定数据块的存储情况,进而确定聚合文件的存储情况,不需要对每个数据块中的存储空间全部扫描,这样不仅提高了扫描查看的效率,而且节约时间。
技术领域
本发明涉及碎片整理技术领域,特别是涉及一种应用在聚合文件上的碎片整理方法。
背景技术
分布式文件系统中,有大量的文件碎片,为了防止碎片过多,通常会将多个文件碎片合并后写入一个大文件,称为聚合文件,实现碎片整理。碎片整理分为两大部分,一部分是前期将文件碎片存入聚合文件,另一部分是后期对聚合文件剩余的文件碎片重新整理。本发明所要解决的问题是后者。在使用聚合文件存储文件时,每次聚合文件的IO都可以写入或读取多个文件碎片,以获取更好的性能。但是随着系统的运行,聚合文件中的部分文件碎片可能会被删除,当聚合文件中的文件碎片被删除后,这个聚合文件的空间就没有这个文件碎片,但是其它文件也不能被存入,这样导致聚合文件的存储效率降低,读取性能降低等问题。
为了解决这个问题,传统的做法是将聚合文件全部扫描一遍,从而获取聚合文件中剩余的文件碎片,然后再将这些文件碎片再重新存入一个新的聚合文件。
由此可见,在进行聚合文件的扫描过程中,需要对聚合文件的每个空间都要查看一遍,导致在碎片整理过程中,扫描查看效率较低,浪费时间。另外,这样的碎片整理方法也不容易得知当前聚合文件的存储情况。如何克服上述文件是本领域技术人员亟待解决的问题。
发明内容
本发明的目的是提供一种应用在聚合文件上的碎片整理方法,用于在碎片整理过程中,提高扫描查看的效率,节约时间。
为解决上述技术问题,本发明提供一种应用在聚合文件上的碎片整理方法,包括:
预先获取聚合文件并将所述聚合文件分为多个数据块,将各所述数据块分为两个部分,第一部分用于添加各文件碎片在所述数据块中的位图索引信息,第二部分用于存储各文件碎片;
当有文件碎片存入所述数据块或从所述数据块中删除时,在所述数据块中记录所述数据块的位图索引信息;
通过所述位图索引信息确定所述聚合文件的当前使用率;
当所述聚合文件的当前使用率达到预定使用率时,启动碎片整理。
优选地,还包括:当有文件碎片存入所述数据块时,在所述第一部分中添加所述文件碎片的文件号。
优选地,还包括:当有文件碎片从所述数据块删除时,删除对应的文件号。
优选地,当接收到查看请求时,通过所述文件号查找所述查看请求对应的目标文件碎片。
优选地,所述将各所述数据块分为两个部分,第一部分用于添加各文件碎片在所述数据块中的位图索引信息,第二部分用于存储各文件碎片具体为:
将所述数据块分为数据头部和数据体,所述数据头部作为所述第一部分,用于添加各文件碎片在所述数据块中的位图索引信息,所述数据体作为所述第二部分,用于存储各文件碎片。
优选地,所述数据头部的存储空间为12KB,其中前8KB用于存储所述文件号,后4KB用于存储所述位图索引信息。
优选地,所述位图索引信息具体采用0和1表示,其中,0表示当前位置的文件碎片已删除或未占用,1表示当前位置的文件碎片仍保留。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611265016.0/2.html,转载请声明来源钻瓜专利网。