文件分块方法、系统及文件处理系统技术方案

技术编号:12030838 阅读:125 留言:0更新日期:2015-09-10 17:33
本发明专利技术公开了一种文件分块方法、系统及文件处理系统,其中,该方法包括:通过变长分块算法,将文件分块为一个或多个变长分块;将该一个或多个变长分块中的每个变长分块分别映射为预定分块长度或预定分块长度的整数倍的定长分块。通过本发明专利技术,解决了相关技术中的定长分块的存储系统无法支持变长分块的重复数据删除,从而导致定长分块重删系统扩展为变长分块的重删系统需要更换文件存储系统、扩展成本高的问题,减少了定长分块重删系统到变长分块重删系统的扩展成本。

【技术实现步骤摘要】

本专利技术涉及通信领域,具体而言,涉及一种文件分块方法、文件分块系统及文件处理系统。
技术介绍
随着计算机信息化程度的提高,人类已经进入信息时代。计算机以及互联网已经深入各行各业,这也使得信息数据量呈几个级数增长。而在这海量的数据中,存在大量的冗余数据。由于需要保证数据的安全,因此会不断对数据进行备份,而各个备份中存在大量的冗余数据。目前已经有不少针对冗余数据进行处理的被称为重复数据删除的技术,以及相关的产品。在重复数据删除技术中,对于处理的目标(粒度),目前最为普遍的是采用次文件级的块作为数据重删的处理粒度。而在对一个文件进行分块时存在固定长度分块(定长分块)和变长分块两大类。固定长度分块处理方便,分块计算消耗的性能开销非常的小,并且对数据管理开销小。且大部分文件系统的与数据分块都是固定长度的(至少在同一个文件中,分块的长度是固定的),因此使用固定长度分块的方法不需要对文件系统有额外的要求。但是固定长度的分块方式对于一个文件在插入数据和删除数据方面非常敏感,可能导致所有分块的位置发生变化,这时两个有大量重复数据的文件可能由于分块问题,而没有重复的数据块,从而无法进行重删处理。因此固定长度分块的方法,虽然实现简单,计算效率高,且对文件系统没有特别的要求,但是其能达到的重删率不够理想;特别是在备份系统中,存在大量文件是被经过增加或删操作一些数据修改得来的情况下,重删率更低。变长的分块处理可以解决固定长度分块对于插入删除敏感的问题,可以带来更高的重删率。常用的变长分块算法有内容定义块(Content-Defined Chunking,简称为CDC)算法、滑块算法等。但这些算法都需要一定的计算资源,并且由于每个块的实际数据长度不同,需要文件系统具有对于不同长度的块的处理能力,且其长度变化的粒度为字节级。市面上已经有不少成熟的定长分块的重复数据删除产品,也已有不少用户部署了这些定长分块的产品。但很多情况下,这些用户对于变长分块的数据重删方式是有需求的,这时就必须要更换整个重删产品,并且其存储系统可能还无法提供变长重复数据删除技术所需要的支持。重复数据删除在对数据的处理时机上,有嵌入(inline)方式的嵌入在整个输入/输出(I/O)流程中的实时重复数据删除,以及根据执行策略对已经写入存储系统中的数据进行重删的后处理式。后处理式可以根据策略在空闲时间对系统中的数据进行消重,不影响正常存储业务,因此应用广泛。对于定长分块的后处理重删,在重删过程中,由于数据块已经在磁盘中,在执行重删时,可以不用再次读写实际数据块(例如仅仅只修改数据块的引用指针)。但如果使用变长的分块方式使用后处理重删,由于需要对存储设备上的文件数据重新分块,需要将实际数据读出来,重新分块,再写入存储设备。针对相关技术中的定长分块的存储系统无法支持变长分块的重复数据删除,从而导致定长分块重删系统扩展为变长分块的重删系统需要更换文件存储系统、扩展成本高的问题,目如尚未提出有效的解决方案。
技术实现思路
本专利技术提供了一种文件分块方法、系统及文件处理系统,以至少解决相关技术中的定长分块的存储系统无法支持变长分块的重复数据删除,从而导致定长分块重删系统扩展为变长分块的重删系统需要更换文件存储系统、扩展成本高的问题。根据本专利技术的一个方面,提供了一种文件分块方法,包括:通过变长分块算法,将文件分块为一个或多个变长分块;将所述一个或多个变长分块中的每个变长分块分别映射为预定分块长度或预定分块长度的整数倍的定长分块。优选地,将所述一个或多个变长分块中的每个变长分块分别映射为所述定长分块包括:在待映射变长分块的长度小于所述预定分块长度的情况下,填充所述待映射变长分块为所述预定分块长度的所述定长分块;在所述待映射变长分块的长度大于所述预定分块长度的情况下,填充所述待映射变长分块为所述预定分块长度的整数倍的所述定长分块。优选地,在将所述一个或多个变长分块中的每个变长分块分别映射为所述定长分块之后,所述方法还包括:保存所述文件的分块信息,其中,所述分块信息包括:所述文件的所述定长分块的位置信息,和所述文件的所述定长分块对应的变长分块的长度。优选地,在保存所述文件的所述分块信息之后,所述方法还包括:将所述定长分块发送至文件存储系统。优选地,在将所述定长分块存储至所述文件存储系统之后,所述方法还包括:对所述文件存储系统中存储的定长分块进行重复数据删除操作。优选地,在将所述一个或多个变长分块中的每个变长分块分别映射为所述定长分块之后,所述方法还包括:对所述定长分块和文件存储系统中存储的定长分块进行重复数据删除操作。根据本专利技术的另一个方面,还提供了一种文件分块系统,包括:分块模块,用于通过变长分块算法,将文件分块为一个或多个变长分块;映射模块,用于将所述一个或多个变长分块中的每个变长分块分别映射为预定分块长度或预定分块长度的整数倍的定长分块。优选地,所述映射模块包括:第一填充单元,用于在待映射变长分块的长度小于所述预定分块长度的情况下,填充所述待映射变长分块为所述预定分块长度的所述定长分块;第二填充单元,用于在所述待映射变长分块的长度大于所述预定分块长度的情况下,填充所述待映射变长分块为所述预定分块长度的整数倍的所述定长分块。优选地,所述系统还包括:保存模块,用于保存所述文件的分块信息,其中,所述分块信息包括:所述文件的所述定长分块的位置信息,和所述文件的所述定长分块对应的变长分块的长度。优选地,所述系统还包括:发送模块,用于将所述定长分块发送至文件存储系统。根据本专利技术的另一个方面,还提供了一种文件处理系统,包括:文件应用系统、文件分块系统和文件存储系统,其中,所述文件应用系统,用于通过文件分块系统向所述文件存储系统写入或读取文件;所述文件分块系统,与所述文件应用系统连接,用于通过变长分块算法将所述文件分块为一个或多个变长分块,并将所述一个或多个变长分块中的每个变长分块分别映射为预定分块长度或预定分块长度的整数倍的定长分块;所述文件存储系统,与所述文件分块系统连接,用于存储所述定长分块。优选地,所述系统还包括:后处理重删系统,与所述文件存储系统连接,用于对所述文件存储系统中存储的定长分块进行重复数据删除操作;和/或实时重删系统,与所述文件存储系统和所述文件分块系统连接,用于对所述定长分块和所述文件存储当前第1页1 2 3 4 本文档来自技高网
...

【技术保护点】
一种文件分块方法,其特征在于,包括:通过变长分块算法,将文件分块为一个或多个变长分块;将所述一个或多个变长分块中的每个变长分块分别映射为预定分块长度或预定分块长度的整数倍的定长分块。

【技术特征摘要】

【专利技术属性】
技术研发人员:刘煌石小兵袁清
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东;44

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

1