一种基于重复数据删除的数据备份上云和恢复系统及方法技术方案

技术编号:33149347 阅读:58 留言:0更新日期:2022-04-22 14:02
本发明专利技术涉及一种基于重复数据删除的数据备份上云和恢复系统及方法,系统包括设置于本地的备份代理模块和备份服务模块,备份服务模块与云端通讯连接,其中,该备份代理模块被配置为:读取需要备份的业务应用数据,对业务应用数据进行分片和指纹计算,获取数据分片及其指纹信息;获取需要恢复的数据对象信息;该备份服务模块中维护有本地指纹数据库、本地对象指纹库和本地索引数据库,其被配置为:基于接收到的指纹信息和本地指纹数据库判断是否为重复数据;基于需要恢复的数据对象信息查询本地索引数据库和本地对象指纹库,从云端下载指定的数据分片并合并。与现有技术相比,本发明专利技术具有保障数据可靠性、减少对网络带宽和云存储空间的占用等优点。空间的占用等优点。空间的占用等优点。

【技术实现步骤摘要】
一种基于重复数据删除的数据备份上云和恢复系统及方法


[0001]本专利技术涉及数据备份恢复
,尤其是涉及一种基于重复数据删除的数据备份上云和恢复系统及方法。

技术介绍

[0002]在传统的数据备份恢复领域都是把应用端的数据如文件、目录、数据库等备份到磁盘或磁带、光盘等介质。当应用端数据损坏时,可以通过备份的副本进行数据恢复。数据备份通常有三种类型:完全备份、增量备份和差异备份。完全备份是备份选中的所有数据内容,增量备份是备份上一次备份后所有增加或发生变化的内容,差异备份是备份上一次的完全备份后发生变化的所有内容。
[0003]无论是哪种备份类型,在备份介质中总是充斥着大量的冗余数据。为了节省更多的空间和带宽,重复删除技术成为关注的焦点。重复删除技术降低了备份所需的存储空间,实现了更快和更频繁的备份,有利于数据保护和更快的修复。
[0004]重复数据删除技术可以分为文件级和块级的重复数据删除。文件级的重复数据删除保证文件不重复,该技术对每个文件生成散列值,通过比较不同文件的散列值来判断文件的内容是否相同,对内容相同的文件不再进行重复存储,而是通过指针来指向重复的文件,这样就达到了基本的重复数据删除的目的。但这种基于文件散列值的去重只能对文件内容完全相同的文件才有用,如果文件内容只存在少量的差别,则没有办法对文件中存在的大量重复内容去重。块级重复数据删除则是对数据进行分块比较,通过对不同分块计算散列值,来比较和判断哪些分块的内容是相同的,对于散列值相同的分块不再重复存储。块级重删根据切分数据块方法的不同,又可分为定长块和变长块的重复数据删除技术。变长块的重复数据删除,数据块的长度是变动的。定长块的重复数据删除,数据块的长度是固定的。在实际的备份系统中,由于备份对象类型很多比如数据库、图片、视频、文档等,采用变长的块级重复数据删除比文件级的重复数据删除有着更高的重删率,可以更加有效地去除冗余的数据。
[0005]随着互联网的快速发展,云技术的落地,现在越来越多的应用选择了将数据备份到云端。将数据备份到云有免维护、易扩展、高效可靠等优点。但云备份也会受到带宽和容量的限制,大多数云存储是按实际使用容量收费,备份上云的数据量越大,则费用越高。而结合重复删除技术无疑可以降低云存储空间的占用和流量费用,节省数据保护成本。
[0006]但是传统的重复删除技术需要通过指纹库来记录数据的指纹和存储位置等信息,在进行数据恢复时会依赖指纹库的信息,如果本地指纹库损坏就会导致数据无法恢复。这就需要将指纹库的信息也上传到云端,但指纹库的大小会随着备份数据量的增加越来越大,而且当数据过期清理时其中的内容也会发生删除和更新,导致指纹库上云的数据量和频率会很大,反而影响了上云的性能,这些都是数据备份上云结合重复数据删除技术当前面临的难题。

技术实现思路

[0007]本专利技术的目的就是为了克服上述现有技术存在的缺陷而提供一种保障数据可靠性、减少对网络带宽和云存储空间的占用的基于重复数据删除技术的数据备份上云和恢复系统及方法。
[0008]本专利技术的目的可以通过以下技术方案来实现:
[0009]一种基于重复数据删除的数据备份上云和恢复系统,用于与云端进行数据交互,包括设置于本地的备份代理模块和备份服务模块,所述备份服务模块与云端通讯连接,其中,
[0010]该备份代理模块被配置为:读取需要备份的业务应用数据,对所述业务应用数据进行分片和指纹计算,获取数据分片及其指纹信息;获取需要恢复的数据对象信息;
[0011]该备份服务模块中维护有本地指纹数据库、本地对象指纹库和本地索引数据库,其中,所述本地指纹数据库存储已备份至云端的数据分片指纹信息、数据分片对应的云端数据对象名以及其在数据对象上的偏移信息,所述本地对象指纹库与云端存储的数据对象一一对应,用于存储所述数据对象的数据分片信息,所述本地索引数据库存储所述数据对象的元数据信息;
[0012]该备份服务模块被配置为:基于接收到的指纹信息和所述本地指纹数据库判断是否为重复数据,若是,则更新该重复数据在云端的备份状态,若否,则将对应的数据分片合并后上传到云端,同步更新本地对象指纹库和本地索引数据库;基于需要恢复的数据对象信息查询所述本地索引数据库和本地对象指纹库,从云端下载指定的数据分片并合并。
[0013]进一步地,所述备份代理模块包括应用单元、重删客户端单元和代理传输单元,该应用单元用于读取需要备份的业务应用数据或者需要恢复的数据对象信息;
[0014]该重删客户端单元用于对所述业务应用数据进行分片和指纹计算,获取数据分片及其指纹信息;
[0015]该代理传输单元用于实现数据分片和指纹信息或者需要恢复的数据对象信息的传输。
[0016]进一步地,所述备份服务模块包括服务传输单元、重删服务单元、元数据管理单元、数据管理单元和上云网关单元,其中,
[0017]该服务传输单元用于接收数据分片和指纹信息或者需要恢复的数据对象信息;
[0018]该重删服务单元用于基于接收到的指纹信息查询本地指纹数据库,若查询到,则调用该指纹信息对应的数据分片在云端存储的数据对象名和偏移信息,发送至元数据管理单元,否则将数据分片发送至数据管理单元;
[0019]该元数据管理单元用于查询并维护所述本地对象指纹库和本地索引数据库,基于需要恢复的数据对象信息查找到需要恢复的数据分片在云端的数据对象名、偏移和长度;
[0020]该数据管理单元用于将接收到的数据分片合并为数据对象;
[0021]该上云网关单元用于实现与云端的数据交互,包括数据对象上云或云端的数据分片下载。
[0022]进一步地,所述备份代理模块和备份服务模块通过socket通讯。
[0023]进一步地,所述备份服务模块和云端通过S3接口通讯。
[0024]进一步地,所述数据分片信息包括云端数据对象中数据分片存储的偏移、长度以
及数据分片引用计数。
[0025]进一步地,所述元数据信息包括数据对象对应的所有数据分片的指纹信息、数据分片在原数据对象的偏移、数据分片的长度以及数据分片上传到云端存储的数据对象名。
[0026]本专利技术还提供一种采用如上所述的基于重复数据删除的数据备份上云和恢复系统的数据备份上云方法,包括以下步骤:
[0027]A1、读取业务应用数据,对所述业务应用业务数据进行分片并计算其指纹,获取数据分片及其指纹信息;
[0028]A2、在本地指纹数据库中查找所述指纹信息,若查找到,则调用该指纹信息对应的数据分片在云端存储的数据对象名和偏移信息,执行步骤A4,否则执行步骤A3;
[0029]A3、将接收到的数据分片合并成数据对象,当合并的数据对象达到设定大小时,将合并的数据对象上传到云端的数据桶中,记录数据对象名和各数据分片对应的偏移,更新所述本地指纹数据库;
[0030]A4、创建和云端数据对象名相同名字的本地对象指纹库,递增更新其版本号;
[0031]A5、本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于重复数据删除的数据备份上云和恢复系统,其特征在于,用于与云端进行数据交互,包括设置于本地的备份代理模块和备份服务模块,所述备份服务模块与云端通讯连接,其中,该备份代理模块被配置为:读取需要备份的业务应用数据,对所述业务应用数据进行分片和指纹计算,获取数据分片及其指纹信息;获取需要恢复的数据对象信息;该备份服务模块中维护有本地指纹数据库、本地对象指纹库和本地索引数据库,其中,所述本地指纹数据库存储已备份至云端的数据分片指纹信息、数据分片对应的云端数据对象名以及其在数据对象上的偏移信息,所述本地对象指纹库与云端存储的数据对象一一对应,用于存储所述数据对象的数据分片信息,所述本地索引数据库存储所述数据对象的元数据信息;该备份服务模块被配置为:基于接收到的指纹信息和所述本地指纹数据库判断是否为重复数据,若是,则更新该重复数据在云端的备份状态,若否,则将对应的数据分片合并后上传到云端,同步更新本地对象指纹库和本地索引数据库;基于需要恢复的数据对象信息查询所述本地索引数据库和本地对象指纹库,从云端下载指定的数据分片并合并。2.根据权利要求1所述的基于重复数据删除的数据备份上云和恢复系统,其特征在于,所述备份代理模块包括应用单元、重删客户端单元和代理传输单元,该应用单元用于读取需要备份的业务应用数据或者需要恢复的数据对象信息;该重删客户端单元用于对所述业务应用数据进行分片和指纹计算,获取数据分片及其指纹信息;该代理传输单元用于实现数据分片和指纹信息或者需要恢复的数据对象信息的传输。3.根据权利要求1所述的基于重复数据删除的数据备份上云和恢复系统,其特征在于,所述备份服务模块包括服务传输单元、重删服务单元、元数据管理单元、数据管理单元和上云网关单元,其中,该服务传输单元用于接收数据分片和指纹信息或者需要恢复的数据对象信息;该重删服务单元用于基于接收到的指纹信息查询本地指纹数据库,若查询到,则调用该指纹信息对应的数据分片在云端存储的数据对象名和偏移信息,发送至元数据管理单元,否则将数据分片发送至数据管理单元;该元数据管理单元用于查询并维护所述本地对象指纹库和本地索引数据库,基于需要恢复的数据对象信息查找到需要恢复的数据分片在云端的数据对象名、偏移和长度;该数据管理单元用于将接收到的数据分片合并为数据对象;该上云网关单元用于实现与云端的数据交互,包括数据对象上云或云端的数据分片下载。4.根据权利要求1所述的基于重复数据删除的数据备份上云和恢复系统,其特征在于,所述备份代理模块和备份服务模块通过socket通讯。5.根据权利要求1所述的基于重复数据删除的数据备份上云和恢复系统,其特征在于,所述备份服务模块和云端通过S3接口通讯。6.根据权利...

【专利技术属性】
技术研发人员:白建强赵瑞
申请(专利权)人:上海爱数信息技术股份有限公司
类型:发明
国别省市:

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

1