一种samba服务器集群下的高速数据备份方法技术

技术编号:18398222 阅读:23 留言:0更新日期:2018-07-08 19:13
本发明专利技术公开了一种samba服务器集群下的高速数据备份方法,实施步骤包括:预先通过备份设备B对存储设备A完成初始数据备份;等待数据备份操作被激活,当数据备份操作被激活时向各个samba服务器节点请求获取差异文件列表,所述差异文件列表包括samba服务器集群下各samba服务器节点截获的客户端发起的samba服务请求的目标文件信息;将所有的差异文件列表合并;基于合并后的差异文件列表通过备份设备B对存储设备A进行数据差异备份。本发明专利技术能够解决samba服务器集群环境下增量备份效率低、占用资源过高的问题,具有备份效率高、备份速度快、占用资源低的优点。

【技术实现步骤摘要】
一种samba服务器集群下的高速数据备份方法
本专利技术涉及一种samba服务器集群下的高速文件备份方法,具体涉及一种集群环境下基于CIFS文件传输协议的高速数据备份方法。
技术介绍
在军队、政府、银行和企业的私有内部网中,存在着很多NAS服务器,在当前大数据风靡的信息时代,数据量动辄几T至几百T,这对于数据备份的性能和准确性来说无疑是巨大的挑战。数据备份类型主要分为全量备份和增量备份两种类型,全量备份对需要备份的数据进行全盘备份,主要依赖于硬件性能和网络环境;增量备份则针对有变化的文件进行备份。现有的增量备份技术主要通过监控需要备份的文件或目录上特定的文件系统事件来决定是否备份该文件或目录,对文件系统事件的监控需要为每个文件创建监控标志,系统运行过程中需要一直监控文件系统事件,这将消耗系统很大的CPU和内存性能,当数据量急剧增长时,这种做法将变得非常不可行。
技术实现思路
本专利技术要解决的技术问题:针对现有技术的上述问题,提供一种samba服务器集群下的高速数据备份方法,本专利技术能够解决samba服务器集群环境下增量备份效率低、占用资源过高的问题,具有备份效率高、备份速度快、占用资源低的优点。为了解决上述技术问题,本专利技术采用的技术方案为:一种samba服务器集群下的高速数据备份方法,实施步骤包括:1)预先通过备份设备B对存储设备A完成初始数据备份;2)等待数据备份操作被激活,当数据备份操作被激活时跳转执行下一步;3)向各个samba服务器节点请求获取差异文件列表,所述差异文件列表包括samba服务器集群下各samba服务器节点截获的客户端发起的samba服务请求的目标文件信息;4)将所有的差异文件列表合并;5)基于合并后的差异文件列表通过备份设备B对存储设备A进行数据差异备份。优选地,步骤4)中将所有差异文件列表合并后还包括对列表中的项目进行排序、去重的过程。优选地,步骤3)中请求获取的差异文件列表包括删除差异文件列表、一般差异文件列表,所述删除差异文件列表用于记录客户端发起的删除文件类samba服务请求的目标文件信息,所述一般差异文件列表用于记录客户端发起的新增或修改类samba服务请求的目标文件信息;步骤4)将所有的差异文件列表合并后得到合并后的删除差异文件列表以及一般差异文件列表。优选地,步骤5)的详细步骤包括:5.1)将合并后的删除差异文件列表中的目标文件从备份设备B中删除;5.2)针对合并后的一般差异文件列表中的每一个目标文件,将目标文件的存储数据划分为数据块,针对存储设备A和备份设备B中的数据块进行比较判断是否发生变动,且将发生变动的数据块从存储设备A复制到备份设备B,并在备份设备B中组合生成与目标文件相同的临时文件,并将该临时文件重命名覆盖目标文件对应的备份文件。优选地,步骤5.2)的详细步骤包括:5.2.1)存储设备A从合并后的一般差异文件列表中遍历选择一个当前目标文件a1;5.2.2)存储设备A将当前目标文件a1的信息发送给备份设备B;5.2.3)备份设备B找到当前目标文件a1对应的备份目标文件a2,并将备份目标文件a2划分为大小固定的数据块并编号,同时记录数据块的起始偏移地址以及数据块长度;5.2.4)备份设备B将对备份目标文件a2划分的每个数据块根据其内容都计算CRC32校验码,并将对备份目标文件a2计算出的所有数据块的CRC32校验码跟随在对应的数据块序号后形成校验码集合,然后发送给存储设备A;5.2.5)当存储设备A接收到备份目标文件a2的校验码集合后,对校验码集合中的每个数据块的CRC32校验码计算一个哈希值,并以该哈希值做哈希索引放入一个哈希表中,哈希表中的每一个条目都指向校验码集合中它所对应的CRC32校验码的数据块号码,对校验码集合根据哈希值进行排序,使得排序后的校验码集合中的顺序和哈希表中的顺序对应;5.2.6)存储设备A主机将当前目标文件a1从第一个字节开始取相同的大小的数据块;针对取出的当前数据块,计算当前数据块的校验码并与校验码集合中的校验码进行匹配,如果当前数据块能够匹配上校验码集合中的某个数据块条目,则判定该数据块和备份目标文件a2中的数据块相同且不需要传输给备份设备B,存储设备A直接跳到该数据块的结尾偏移地址,从此偏移处继续取数据块进行匹配直至当前目标文件a1的尾部;如果当前数据块不能匹配上校验码集合中的任意数据条目,则判定该数据块是需要传输给备份设备B的非匹配数据块,存储设备A将跳转到当前数据块的下一个字节,从当前数据块的下一个字节处继续取数据块进行匹配直至当前目标文件a1的尾部;5.2.7)存储设备A针对所有匹配的数据块只发送匹配数据块的附加信息传输给备份设备B,如果两个匹配数据块之间有非匹配的数据则将非匹配的数据块及其附加信息传输给备份设备B,所述附加信息包括数据块的起始位置和偏移量;备份设备B收到所有的匹配数据块的附加信息以及非匹配的数据块及其附加信息后,将所有的数据块重组得到与当前目标文件a1内容相同的临时文件,并将临时文件重命名替换备份设备B上存储的备份目标文件a2;5.2.8)存储设备A判断合并后的一般差异文件列表是否已经遍历完毕,如果尚未遍历完毕,则从合并后的一般差异文件列表中遍历选择下一个当前目标文件a1并跳转执行步骤5.2.2);如果已经遍历完毕,则结束并退出。优选地,本专利技术还包括各个samba服务器节点生成差异文件列表的步骤如下:S1)各个samba服务器节点通过samba服务内置的Hook程序截获每一个客户端的samba服务请求,并通过哈希表记录最近记录过的文件操作,为每一个连接的客户端生成一个独立的临时差异文件列表;当截获一个客户端的samba服务请求时跳转执行下一步;S2)判断截获的samba服务请求的目标文件是否已经在哈希表中存在,如果已经在哈希表中存在则丢弃该截获的samba服务请求;否则,将该截获的samba服务请求的目标文件写入哈希表中,并将该截获的samba服务请求的目标文件写入临时差异文件列表;S3)判断客户端是否退出登录或者登录超过指定时间,如果客户端退出登录或者登录超过指定时间,则将该客户端的临时差异文件列表重命名为正式的差异文件列表。优选地,步骤S1)中产生的临时差异文件列表保存在以当前samba服务器节点名称命名的目录下面。本专利技术samba服务器集群下的高速数据备份方法具有下述优点:本专利技术samba服务器集群下的高速数据备份方法通过向各个samba服务器节点请求获取差异文件列表,差异文件列表包括samba服务器集群下各samba服务器节点截获的客户端发起的samba服务请求的目标文件信息,将所有的差异文件列表合并,基于合并后的差异文件列表通过备份设备B对存储设备A进行数据差异备份,能够解决samba服务器集群环境下增量备份效率低、占用资源过高的问题,具有备份效率高、备份速度快、占用资源低的优点。附图说明图1为本专利技术实施例samba服务器集群的拓扑结构示意图。图2为本专利技术实施例方法的基本流程图。图3为本专利技术实施例方法中差异文件列表合并及后续预处理的流程图。图4为本专利技术实施例方法中进行数据差异备份的流程图。图5为本专利技术实施例方法中生产差异文件列表的流程图。具体实施方式下文将以图1所示samba服务器集群为例本文档来自技高网...

【技术保护点】
1.一种samba服务器集群下的高速数据备份方法,其特征在于实施步骤包括:1)预先通过备份设备B对存储设备A完成初始数据备份;2)等待数据备份操作被激活,当数据备份操作被激活时跳转执行下一步;3)向各个samba服务器节点请求获取差异文件列表,所述差异文件列表包括samba服务器集群下各samba服务器节点截获的客户端发起的samba服务请求的目标文件信息;4)将所有的差异文件列表合并;5)基于合并后的差异文件列表通过备份设备B对存储设备A进行数据差异备份。

【技术特征摘要】
1.一种samba服务器集群下的高速数据备份方法,其特征在于实施步骤包括:1)预先通过备份设备B对存储设备A完成初始数据备份;2)等待数据备份操作被激活,当数据备份操作被激活时跳转执行下一步;3)向各个samba服务器节点请求获取差异文件列表,所述差异文件列表包括samba服务器集群下各samba服务器节点截获的客户端发起的samba服务请求的目标文件信息;4)将所有的差异文件列表合并;5)基于合并后的差异文件列表通过备份设备B对存储设备A进行数据差异备份。2.根据权利要求1所述的samba服务器集群下的高速数据备份方法,其特征在于,步骤4)中将所有差异文件列表合并后还包括对列表中的项目进行排序、去重的过程。3.根据权利要求1所述的samba服务器集群下的高速数据备份方法,其特征在于,步骤3)中请求获取的差异文件列表包括删除差异文件列表、一般差异文件列表,所述删除差异文件列表用于记录客户端发起的删除文件类samba服务请求的目标文件信息,所述一般差异文件列表用于记录客户端发起的新增或修改类samba服务请求的目标文件信息;步骤4)将所有的差异文件列表合并后得到合并后的删除差异文件列表以及一般差异文件列表。4.根据权利要求3所述的samba服务器集群下的高速数据备份方法,其特征在于,步骤5)的详细步骤包括:5.1)将合并后的删除差异文件列表中的目标文件从备份设备B中删除;5.2)针对合并后的一般差异文件列表中的每一个目标文件,将目标文件的存储数据划分为数据块,针对存储设备A和备份设备B中的数据块进行比较判断是否发生变动,且将发生变动的数据块从存储设备A复制到备份设备B,并在备份设备B中组合生成与目标文件相同的临时文件,并将该临时文件重命名覆盖目标文件对应的备份文件。5.根据权利要求4所述的samba服务器集群下的高速数据备份方法,其特征在于,步骤5.2)的详细步骤包括:5.2.1)存储设备A从合并后的一般差异文件列表中遍历选择一个当前目标文件a1;5.2.2)存储设备A将当前目标文件a1的信息发送给备份设备B;5.2.3)备份设备B找到当前目标文件a1对应的备份目标文件a2,并将备份目标文件a2划分为大小固定的数据块并编号,同时记录数据块的起始偏移地址以及数据块长度;5.2.4)备份设备B将对备份目标文件a2划分的每个数据块根据其内容都计算CRC32校验码,并将对备份目标文件a2计算出的所有数据块的CRC32校验码跟随在对应的数据块序号后形成校验码集合,然后发送给存储设备A;5.2.5)当存储设备A接收到备份目标文件a2的校验码集合后,对校验码集合中的每个数据块的CRC32校验码计算一个哈希值,并以该哈希值做哈希索引放入一个哈希表中,哈希表中的每一个条目都...

【专利技术属性】
技术研发人员:何枭彭勇蒋李申锟铠刘文清杨涛
申请(专利权)人:湖南麒麟信安科技有限公司
类型:发明
国别省市:湖南,43

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

1