文件自动分类方法及系统的制作方法
【专利摘要】一种文件自动分类方法,该方法包括步骤:读取用户文件的文件大小;当文件大小未超过设定值时,判定该用户文件应该使用全文件分块方法进行分块,传送至全文件分块服务器;当文件大小超过设定值时,读取该用户文件的文件头数据,从中提取文件类型;根据提取的文件类型,分析该用户文件应该使用固定长度分块、可变长度分块还是滑动块分块方法进行分块,传送至对应的固定长度分块服务器、可变长度分块服务器或者滑动块分块服务器。本发明还提供一种文件自动分类系统。本发明可以自动分析出文件适合的分块方法。
【专利说明】文件自动分类方法及系统
【技术领域】
[0001]本发明涉及一种文件管理方法及系统,尤其是涉及一种云存储中的文件自动分类方法及系统。
【背景技术】
[0002]在重复数据删除过程中,文件分块有四种主流方法,包括全文件分块、固定长度分块(FSP )、可变长度分块(CDC)及滑动块分块(SB )。四种分块方法处理对应类型的文件各有优势:全文件分块适用于较小的电子书、低清晰度个人照片等;固定长度分块适用于高清晰度照片、电影、音乐等;可变长度分块适用于光盘镜像、系统备份等;滑动块分块适用于经常编辑的WorcUExcel、代码源文件、视频剪辑等。四种分块方法各有优缺点,目前没有任何一种分块方法能适合所有情况。我们无法得知用户一定会存储何种文件,因此不能快速得到最合适的分块方法。
【发明内容】
[0003]鉴于以上内容,有必要提供一种文件自动分类方法,可以自动分析出文件适合的分块方法。
[0004]鉴于以上内容,还有必要提供一种文件自动分类系统,可以自动分析出文件适合的分块方法。
[0005]所述文件自动分类方法包括:第一读取步骤:当分配服务器接收到用户存储的文件之后,读取该用户文件的文件大小;第一分析步骤:当该用户文件的文件大小小于或等于设定值时,判定该用户文件应该使用全文件分块方法进行分块,然后执行第一传送步骤;第一传送步骤:将该用户文件传送至全文件分块服务器;第二读取步骤:当该用户文件的文件大小大于设定值时,读取该用户文件的文件头数据;提取步骤:从读取的文件头数据中提取该用户文件的文件类型;第二分析步骤:根据提取的文件类型,分析该用户文件应该使用固定长度分块、可变长度分块还是滑动块分块方法进行分块;及第二传送步骤:根据第二分析步骤的分析结果将该用户文件传送至对应的固定长度分块服务器、可变长度分块服务器或者滑动块分块服务器。
[0006]所述文件自动分类系统包括:读取模块,用于当分配服务器接收到用户存储的文件之后,读取该用户文件的文件大小;分析模块,用于当该用户文件的文件大小小于或等于设定值时,判定该用户文件应该使用全文件分块方法进行分块;传送模块,用于当判定该用户文件应该使用全文件分块方法进行分块时,将该用户文件传送至全文件分块服务器;所述读取模块,还用于当该用户文件的文件大小大于设定值时,读取该用户文件的文件头数据;提取模块,用于从读取的文件头数据中提取该用户文件的文件类型;所述分析模块,还用于根据提取的文件类型,分析该用户文件应该使用固定长度分块、可变长度分块还是滑动块分块方法进行分块;及所述传送模块,还用于根据分析模块的分析结果将该用户文件传送至对应的固定长度分块服务器、可变长度分块服务器或者滑动块分块服务器。[0007]相较于现有技术,所述的文件自动分类方法及系统,能够在进行重复数据删除之
前,根据文件大小和文件类型分析出用户文件适合使用的分块方法,将用户文件自动分类,
传送至相应的分块服务器中进一步处理,从而达到提高效率以及负载均衡的作用。
【专利附图】
【附图说明】
[0008]图1是本发明文件自动分类系统较佳实施例的运行环境图。
[0009]图2是本发明文件自动分类系统较佳实施例的功能模块图。
[0010]图3是本发明文件自动分类方法较佳实施例的流程图。
[0011]图4A是执行文件分块和重复数据删除过程之后存储的文件索引列表较佳实施例
的示意图。
[0012]图4B是采用可变长度分块方法分块的存储文件列表较佳实施例的示意图。
[0013]主要元件符号说明
[0014]
【权利要求】
1.一种文件自动分类方法,其特征在于,该方法包括: 第一读取步骤:当分配服务器接收到用户存储的文件之后,读取该用户文件的文件大小; 第一分析步骤:当该用户文件的文件大小小于或等于设定值时,判定该用户文件应该使用全文件分块方法进行分块,然后执行第一传送步骤; 第一传送步骤:将该用户文件传送至全文件分块服务器; 第二读取步骤:当该用户文件的文件大小大于设定值时,读取该用户文件的文件头数据; 提取步骤:从读取的文件头数据中提取该用户文件的文件类型; 第二分析步骤:根据提取的文件类型,分析该用户文件应该使用固定长度分块、可变长度分块还是滑动块分块方法进行分块;及 第二传送步骤:根据第二分析步骤的分析结果将该用户文件传送至对应的固定长度分块服务器、可变长度分块服务器或者滑动块分块服务器。
2.如权利要求1所述的文件自动分类方法,其特征在于,在所述第一读取步骤中,利用fstat O函数读取该用户文件的文件属性,该文件属性中包括文件大小。
3.如权利要求1所述的文件自动分类方法,其特征在于,在所述第二读取步骤中,利用read O函数读取该用户文件的 前十六位数据,即为文件头。
4.如权利要求1所述的文件自动分类方法,其特征在于,在所述第二分析步骤中: 当该用户文件的文件类型为较大且不经常变动的文件时,使用固定长度分块方法进行分块; 当该用户文件的文件类型为较大且经常少量修改的文件时,使用可变长度分块方法进行分块; 当该用户文件的文件类型为经常批量修改的文件时,使用滑动块分块方法进行分块。
5.一种文件自动分类系统,其特征在于,该系统包括: 读取模块,用于当分配服务器接收到用户存储的文件之后,读取该用户文件的文件大小; 分析模块,用于当该用户文件的文件大小小于或等于设定值时,判定该用户文件应该使用全文件分块方法进行分块; 传送模块,用于当判定该用户文件应该使用全文件分块方法进行分块时,将该用户文件传送至全文件分块服务器; 所述读取模块,还用于当该用户文件的文件大小大于设定值时,读取该用户文件的文件头数据; 提取模块,用于从读取的文件头数据中提取该用户文件的文件类型; 所述分析模块,还用于根据提取的文件类型,分析该用户文件应该使用固定长度分块、可变长度分块还是滑动块分块方法进行分块;及 所述传送模块,还用于根据分析模块的分析结果将该用户文件传送至对应的固定长度分块服务器、可变长度分块服务器或者滑动块分块服务器。
6.如权利要求5所述的文件自动分类系统,其特征在于,所述读取模块利用fstatO函数读取该用户文件的文件属性,该文件属性中包括文件大小。
7.如权利要求5所述的文件自动分类系统,其特征在于,所述读取模块利用readO函数读取该用户文件的前十六位数据,即为文件头。
8.如权利要求5所述的文件自动分类系统,其特征在于: 当该用户文件的文件类型为较大且不经常变动的文件时,使用固定长度分块方法进行分块; 当该用户文件的文件类型为较大且经常少量修改的文件时,使用可变长度分块方法进行分块; 当该 用户文件的文件类型为经常批量修改的文件时,使用滑动块分块方法进行分块。
【文档编号】G06F17/50GK103778268SQ201210410185
【公开日】2014年5月7日 申请日期:2012年10月24日 优先权日:2012年10月24日
【发明者】柴智权, 李大鹏, 林海洪, 李忠一 申请人:鸿富锦精密工业(深圳)有限公司, 鸿海精密工业股份有限公司