一种基于链接技术的云存储文件去重方法技术

技术编号:32331626 阅读:16 留言:0更新日期:2022-02-16 18:39
本发明专利技术公开了一种基于链接技术的云存储文件去重方法,在云存储内创建并保存重复文件的链接文件,并利用链接文件保存链接信息,每个链接文件的链接信息顺序地记录重复文件在云存储内的位置,实现对真实文件与各个重复文件的串联,用户对任一重复文件的访问,都将通过链接文件的遍历寻找到真实文件。由于链接文件小,且链接信息保存在云存储内,并不依赖于本地存储,有利于实现在分布式环境中文件去重的单点计算和多点独立访问的特性,有效解决重复文件过多导致的云存储空间占用过大、带宽成本增高的问题,同时又能简单便利地应用在分布式系统中。式系统中。式系统中。

【技术实现步骤摘要】
一种基于链接技术的云存储文件去重方法


[0001]本专利技术隶属于云存储和文件系统
,具体涉及一种基于链接技术的云存储文件去重方法。

技术介绍

[0002]当前背景下,云存储技术往往应用在多个场景之中。例如运营商用申请云存储服务,开辟用户图片和视频存储空间;用户使用云存储空间分享自己的存储文件,进行文件归档和数据容灾;数据服务商利用云存储进行分布式静态文件缓存等等。这些应用场景有一些共同的特征,即存储空间占用大,访问频率和带宽占用增长快,同一文件含多个副本等等。
[0003]若想以最小的代价存储最多的文件,将带来存储成本和传输成本的全面下降。因此,如何降低文件存储成本成为云存储方案重要考量之一。
[0004]目前市面上有一些利用云存储或本地存储执行数据去重的技术,但这些技术大多完全依赖于本地离线计算结果,即计算出每一文件的哈希值,然后比对哈希值,并将这些重复文件的关联信息记录在本地;在请求访问文件时,利用这些本地已经计算好的关联信息进行访问跳转。对于分布式要求高的系统,这意味着需要多点部署数据库,并保持关联数据的同步,实施难度及成本均高。
[0005]因此,需要一种性能更优越的云存储文件去重方法。

技术实现思路

[0006]本专利技术所要解决的技术问题是克服现有技术的不足,提供一种性能更优越的云存储文件去重方法。
[0007]为解决上述技术问题,本专利技术提供一种基于链接技术的云存储文件去重方法,在云存储内创建并保存重复文件的链接文件,并利用链接文件保存链接信息,每个链接文件的链接信息顺序地记录重复文件在云存储内的位置,实现对真实文件与各个重复文件的串联,用户对任一重复文件的访问,都将通过链接文件的遍历寻找到真实文件。由于链接文件小,且链接信息保存在云存储内,并不依赖于本地存储,有利于实现在分布式环境中文件去重的单点计算和多点独立访问的特性,有效解决重复文件过多导致的云存储空间占用过大、带宽成本增高的问题,同时又能简单便利地应用在分布式系统中;其特征在于,包含如下步骤:
[0008]步骤1:配置本地的文件信息表,所述文件信息表用于记录云存储系统内现有文件的文件信息,所述文件信息包含文件内容、存储路径;所述文件信息表的配置项包含文件内容的哈希值和文件的储存路径;
[0009]步骤2:获取待上传文件的文件内容,解析文件内容,计算文件内容的哈希值;获取本地的文件信息表,在文件信息表中检索是否存在与所述文件内容的哈希值一致的文件信息;若不存在,判定所述待上传文件为真实文件,执行步骤3;若存在,判定所述待上传文件
为重复文件,执行步骤4;
[0010]步骤3:调用云存储系统的文件上传接口,将真实文件的文件信息上传至云存储系统内,并在文件信息表中记录文件内容的哈希值和文件储存路径;
[0011]步骤4:将本次待上传的重复文件新建为链接文件,将链接文件的文件信息存入云存储系统内,并在文件信息表中记录链接文件的文件内容的哈希值和文件储存路径,所述链接文件的文件内容的哈希值为经步骤2计算获得的文件内容的哈希值;
[0012]步骤5:遍历云存储系统内的现有文件的文件信息,执行文件去重访问,获取云存储系统内的真实文件的文件信息。
[0013]所述步骤2中计算哈希值的算法为MD5;所述步骤2中的云存储系统为亚马逊S3。
[0014]所述步骤4中包括:以预设的文本键值对标记新建的链接文件;在新建的链接文件的文件内容中,写入链接文件的魔数值、版本号及链接位置;所述链接文件的魔数值、版本号均是预设的具有固定字节数的标识符;从文件信息表中获取与步骤2中文件内容的哈希值相同的现有文件的文件信息,按照现有文件上传的时间顺序,取最后上传的现有文件的储存路径为链接位置;待链接文件的文件信息存入云存储系统中,以文件元数据的形式保存文本键值对。
[0015]所述步骤4中,所述在新建的链接文件的文件内容中,写入链接文件的魔数值、版本号及链接位置,是从文件内容的头部开始依次写入链接文件魔数值、版本号及链接位置;
[0016]所述步骤5包括:提取文件信息访问请求中的存储路径,按照存储路径从云存储系统中获取文件内容及文本键值对;比对文本键值对是否与步骤4中链接文件的文本键值对一致;若不一致,判定当前获取的文件为真实文件;将真实文件的文件信息返回给浏览器端;若一致,判定当前获取的文件为链接文件,提取文件内容中的链接位置,按照链接位置指向的储存路径,继续从云存储系统中获取文件内容及文本键值对,比对文本键值对,直至根据比对结果判定文件为真实文件为止。
[0017]所述步骤4中,所述文本键值对的键为Content

Type,值为自定义MIME类型;链接文件的文本键值对表示为<Content

Type,自定义MIME类型>;所述文本键值对的存储通过亚马孙S3的文件元数据功能实现存储;待从亚马逊S3中获取文件信息的同时获取文件元数据中的文本键值对。
[0018]所述步骤5中,比对文本键值具体包含:
[0019]步骤501:比对文本键值对是否为键为Content

Type的键值对,且所述键为Content

Type的键值对中的值是否与步骤4中自定义MIME类型一致;若上述两者均满足,则文件判定为链接文件;若上述两者不满足,则文件判定为真实文件;
[0020]步骤502:若文件判定为链接文件,从链接文件内容的头部开始计算链接文件魔数值及链接文件版本号占据的固定字节数,以固定字节数加1的位置为起始位置,从起始位置开始提取所有文件内容作为链接位置。
[0021]在所述步骤1

步骤5中,若云存储系统不支持MIME类型的存储,则根据链接文件魔数值判定文件是否为链接文件,具体是根据预设链接文件魔数值占据的字节数,从文件内容头部提取相同字节数的内容,若提取的内容与步骤4预配的链接文件魔数值一致,则判定为链接文件;若不是,则判定为真实文件。
[0022]本专利技术所达到的有益效果为:
[0023]本专利技术通过离线计算云存储文件的哈希值,为重复文件创建内容极小的链接文件,减少云存储的容量,降低上传文件时的带宽占用。与现有技术相比,减少了分布式系统访问时所需要的链接关系存储,降低了本地存储的成本。此外,虽然多次访问看似会降低文件访问的性能,但由于链接文件极小,因而访问速度极快,性能损耗几乎可以忽略不计。
附图说明
[0024]图1为本专利技术实施例中基于链接技术的文件去重方法实现流程示意图
[0025]图2为本专利技术实施例中链接文件内容的结构示意图;
[0026]图3为本专利技术实施例中文件去重访问的流程示意图;
[0027]图4为本专利技术实施例中基于链接技术的云存储内文件去重的系统结构示意图;
[0028]图5为本专利技术实施例中基于链接技术的云存储文件去重的系统部署图;
具体实施方式
[本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于链接技术的云存储文件去重方法,其特征在于,包含如下步骤:步骤1:配置本地的文件信息表,所述文件信息表用于记录云存储系统内现有文件的文件信息,所述文件信息包含文件内容、存储路径;所述文件信息表的配置项包含文件内容的哈希值和文件的储存路径;步骤2:获取待上传文件的文件内容,解析文件内容,计算文件内容的哈希值;获取本地的文件信息表,在文件信息表中检索是否存在与所述文件内容的哈希值一致的文件信息;若不存在,判定所述待上传文件为真实文件,执行步骤3;若存在,判定所述待上传文件为重复文件,执行步骤4;步骤3:调用云存储系统的文件上传接口,将真实文件的文件信息上传至云存储系统内,并在文件信息表中记录文件内容的哈希值和文件储存路径;步骤4:将本次待上传的重复文件新建为链接文件,将链接文件的文件信息存入云存储系统内,并在文件信息表中记录链接文件的文件内容的哈希值和文件储存路径,所述链接文件的文件内容的哈希值为经步骤2计算获得的文件内容的哈希值;步骤5:遍历云存储系统内的现有文件的文件信息,执行文件去重访问,获取云存储系统内的真实文件的文件信息。2.如权利要求1所述的一种基于链接技术的云存储文件去重方法,其特征在于,所述步骤2中计算哈希值的算法为MD5;所述步骤2中的云存储系统为亚马逊S3。3.如权利要求2所述的一种基于链接技术的云存储文件去重方法,其特征在于,所述步骤4中包括:以预设的文本键值对标记新建的链接文件;在新建的链接文件的文件内容中,写入链接文件的魔数值、版本号及链接位置;所述链接文件的魔数值、版本号均是预设的具有固定字节数的标识符;从文件信息表中获取与步骤2中文件内容的哈希值相同的现有文件的文件信息,按照现有文件上传的时间顺序,取最后上传的现有文件的储存路径为链接位置;待链接文件的文件信息存入云存储系统中,以文件元数据的形式保存文本键值对。4.如权利要求3所述的一种基于链接技术的云存储文件去重方法,其特征在于,所述步骤4中,所述在新建的链接文件的文件内容中,写入链接文件的魔数值、版本号及链接位置,是从文件内容的头部开始依次写入链接文件魔数值、版本号及链接位置。5.如权利要求4所述的一种基于链接技术的云存储文件去重方法,其特...

【专利技术属性】
技术研发人员:冯晓军贺晟
申请(专利权)人:焦点科技股份有限公司
类型:发明
国别省市:

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

1