一种自动清理备份对象的方法
技术领域
本发明涉及数据处理技术领域,尤其涉及一种自动清理备份对象的方法。
背景技术
由于系统可能出现的突发性故障,导致数据丢失、被修改,通常会给公司或个人用户造成较大损失,有时还会出现无法弥补的损失。所以,数据的定期备份至关重要。云计算、云备份的应用,能够在灾难发生时,使得所有在线的应用数据丢失基本为0,恢复间隔接近实时,让业务恢复快速启动和运行。并且,该种备份的服务成本较低。然而,随着系统的持续运行,备份的数据也堆积得越来越多,给服务器带来负担。同时,在数据丢失后,通常需要恢复的是实时数据,不需要较旧的历史数据。因此,基于云计算的备份系统,通常需要定期清理备份数据。
现有技术通过设置一个备份记录配额来实现备份数据的自动清理。系统会定期清理较老的备份记录,从而确保备份记录数量维持在这个配额内。比如,设置备份记录的配额是10条,从今年1月开始,每月1号创建一条备份记录,那么在11月1日时,将会清理1月1日创建的备份记录。
但是,每个备份对象是存在差异的,若对所有备份对象执行同样的清理规则,无法满足用户对不同备份对象的差异化需求。另外,上述现有技术也没有考虑每条备份记录的差异性,备份记录创建时间的间隔可能不同。如果按照配额统一清理,可能会把近期创建的重要的备份记录清理掉。
因此,需要一种不再根据配额的自动清理备份对象的方法。
发明内容
为了解决上述问题,本发明提供一种自动清理备份对象的方法,能够根据用户历史行为生成清理规则,不再根据配额限制清理备份数据,针对性更强,提高了作业效率和准确率。
为实现上述目的,本发明提供了一种自动清理备份对象的方法,包括:
根据用户历史行为,创建备份对象的清理规则;
获取清理规则中的间隔时间TJ和保留时间TB;
基于所述间隔时间TJ和保留时间TB,从备份对象的多条备份记录中,过滤需要清理的备份记录;
对上述需要清理的备份记录执行清理。
可选地,创建备份对象的清理规则包括以下步骤:
根据历史行为数据库统计得出清理规则中的保留时间TB;
根据历史行为数据库统计得出清理规则中的间隔时间TJ;
其中,i,j为自然数。
可选地,所述用户历史行为数据库的形成步骤为:
记录用户手工清理某条备份记录的数据;
计算清理该条备份记录的保留时间Ti和该备份对象的间隔时间Tj;
将保留时间Ti、间隔时间Tj以及该条备份记录所属的备份对象添加到用户历史行为数据库。
可选地,所述保留时间Ti为每条备份记录的清理时间距离创建时间的时间差。
可选地,所述间隔时间为上一次该备份对象的清理时间距离本次清理时间的时间差。
可选地,所述保留时间TB为当前时间距离每条备份记录创建时间的时间差。
可选地,从用户历史行为数据库中的备份记录中,统计出现最多的N个保留时间Ti及其占比Ai,根据以下公式计算出这条备份记录所属备份对象的清理规则中的保留时间TB:
为≥2的自然数,
可选地,从用户历史行为数据库中的间隔时间中,统计出现最多的N个间隔时间Tj及其占比Aj,根据以下公式计算出这条备份记录所属备份对象的清理规则中的间隔时间TJ:
为≥2的自然数,
可选地,过滤需要清理的备份记录为从备份对象的多条备份记录中过滤出保留时间Ti大于或等于清理规则中的保留时间TB的备份记录。
此外,本发明还提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现上述自动清理备份对象的方法。
本发明的优点和有益效果在于:相比现有的云计算备份对象清理的技术,本发明提供了一种自动清理备份对象的方法,根据用户手工清理备份记录的数据,统计得到每条记录的保留时间和间隔时间两个指标,添加到历史行为数据库中,通过预定算法创建并更新清理规则,使得清理备份不再受固定配额的限制。该方法根据所创建的备份对象的清理规则,过滤出需要清理的备份记录,再对该备份记录执行自动清理。并且在执行完成后,周期性循环该自动清理的步骤。该方法从用户行为中统计出用户的清理习惯,节约了存储资源,提高了作业效率和准确率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例的部分介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出了本发明一实施例的自动清理备份对象方法的执行清理流程示意图。
图2示意性示出了本发明一实施例的自动清理备份对象方法的创建规则流程示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
在一实施例中,如图1,本发明提供了一种自动清理备份对象的方法,在初始状态时关闭自动清理,等待清理规则创建完成并达到稳定状态,包括以下步骤:
根据用户历史行为,创建备份对象的清理规则;
基于所述间隔时间TJ和保留时间TB,从备份对象的多条备份记录中,过滤需要清理的备份记录;
对上述需要清理的备份记录执行清理。
在上述清理步骤执行完毕后,再次基于备份对象的清理规则,此时清理规则中的保留时间TB和间隔时间TJ可能已更新,进入下一次周期性循环。
进一步地,如图2所示,用户手工清理某条备份记录时,该方法把以下信息作为新记录添加到用户历史行为数据库中。创建备份对象的清理规则包括以下步骤:
记录用户手工清理某条备份记录的数据;
计算清理该条备份记录的保留时间Ti,将这条备份记录的清理时间距离创建时间的时间差,记录为保留时间Ti;
计算清理该备份对象的间隔时间Tj,将上一次备份对象清理时间距离本次清理的时间差,记录为间隔时间Tj;
将保留时间Ti、间隔时间Tj以及该条备份记录所属的备份对象作为新纪录添加到用户历史行为数据库;
调取用户历史行为数据库中某条备份记录的保留时间Ti、间隔时间Tj以及该条备份记录所属的备份对象;
根据历史行为数据库统计得出清理规则中的保留时间TB;
根据历史行为数据库统计得出清理规则中的间隔时间TJ;
其中,i,j为自然数。
从而,更新该备份对象的清理规则中的保留时间TB和间隔时间TJ。
进一步地,清理规则中的保留时间TB的统计过程为:从用户历史行为数据库中的备份记录中,统计出现最多的N个保留时间Ti及其占比Ai,根据以下公式计算出这条备份记录所属备份对象的清理规则中的保留时间TB:
为≥2的自然数,
进一步地,清理规则中的间隔时间TJ的统计过程为:从用户历史行为数据库中的间隔时间中,统计出现最多的N个间隔时间Tj及其占比Aj,根据以下公式计算出这条备份记录所属备份对象的清理规则中的间隔时间TJ:
为≥2的自然数,
优选地,可选择N=3时统计得出所需要的清理规则中的保留时间TB和间隔时间TJ,即从用户历史行为数据库中的备份记录中,统计出现最多的三个保留时间T1、T2、T3及其占比A1、A2、A3,根据下面的公式计算出这条备份记录所属备份对象的保留时间TB:
TB=T1*A1+T2*A2+T3*A3。
从用户历史行为数据库中的间隔时间中,统计出现最多的三个间隔时间T1′、T2′、T3′及其占比A1′、A2′、A3′(间隔时间T1′和A1′与Tj和Aj含义相同,其上标仅为了在N=3例中与保留时间T1和A1做区别),根据下面的公式计算出这条备份记录所属备份对象的间隔时间TJ:
TJ=T1’*A1’+T2’*A2’+T3’*A3’。
进一步地,待历史行为数据积累预定时间段,清理规则达到稳定状态时,即用户多次按照所得到的清理规则进行手动清理,结果均较为合理时,则可根据清理规则中的保留时间TB和间隔时间TJ,开启自动清理。
进一步地,过滤需要清理的备份记录为从备份对象的多条备份记录中过滤出保留时间Ti大于或等于清理规则中的保留时间TB的备份记录。
在一具体应用实施例中,以某台云主机作为备份对象,初始状态时关闭自动清理。备份过程:从2019年1月1日开始执行,每周备份一次,持续2个月;之后每3天备份一次,一直持续下去。
用户清理过程:从2019年3月1日开始,每周清理最早的1条备份记录,持续1个月;之后每3天清理最早的1条备份记录,再持续2个月。为了方便计算,假设平均每个月有30天。
根据上述清理规则计算方式,计算得出清理规则中的保留时间为:60天*50%+38天*50%=49天。
计算得出清理规则中的间隔时间为:7天*50%+3天*50%=5天。
根据上述3个多月时间段的历史行为数据的积累,使得当前清理的周期对系统运行较为理想,清理规则达到稳定状态后,则开启自动清理。系统提取到以上49天的保留时间和5天间隔时间的清理规则,等待每间隔5天执行一次清理,获取对备案记录保留49天的清理模式,过滤该云主机备份中大于49天保留时间的每条备案记录,对过滤出的备案记录执行清理。执行清理后,再次提取备份对象的新的清理规则,进入下一次周期性循环。
此外,本发明还提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现上述自动清理备份对象的方法,至少包括以下步骤:
根据用户历史行为,创建备份对象的清理规则;
获取清理规则中的间隔时间TJ和保留时间TB;
基于所述间隔时间TJ和保留时间TB,从备份对象的多条备份记录中,过滤需要清理的备份记录;
对上述需要清理的备份记录执行清理。
可选地,所述电子设备可为服务器或个人计算机等。
综上所述,本发明提供了一种自动清理备份对象的方法,根据用户手工清理备份记录的数据,统计得到每条记录的保留时间和间隔时间两个指标,将其添加到历史行为数据库中,并通过预定算法创建并更新清理规则,使得清理备份不再受固定配额的限制。该方法根据所创建的备份对象的清理规则,过滤出需要清理的备份记录,再对需要清理的备份记录执行自动清理。并且在执行完成后,周期性循环该自动清理的步骤。该方法从用户行为中统计出用户的清理习惯,节约了存储资源,提高了作业效率和准确率。
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考上述具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。