System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开涉及计算机,尤其涉及一种数据库的数据清理方法、数据库的数据清理装置、计算机可读存储介质及电子设备。
技术介绍
1、生产系统中存在数据膨胀的场景,在这些场景中存在高占比的无效数据造成的数据膨胀。针对此种情况,借助数据结转平台的能力,通过少量多批次的形式删除生产系统的数据库中的无效数据。
2、然而,在数据量达到一定规模后,数据结转平台的性能会线性下降,存在清理时间不可控的风险,影响数据库服务的稳定性,无法在不影响生产系统业务使用的前提下完成数据清理。
3、需要说明的是,在上述
技术介绍
部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
技术实现思路
1、本公开的目的在于提供一种数据库的数据清理方法、数据库的数据清理装置、计算机可读存储介质及电子设备,能够控制数据清理时间,保证数据库服务的稳定性,实现在不影响生产系统业务使用的前提下完成数据清理。
2、本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
3、根据本公开的一个方面,提供一种数据库的数据清理方法,包括:获取数据库的清理参数,所述数据库的清理参数包括数据库的数据留存时间和数据库的滚动清理周期;根据所述数据留存时间,确定数据库对应的历史数据清理条件;利用所述数据留存时间和所述滚动清理周期,确定数据增量时间,根据所述数据增量时间,确定数据库对应的无效数据清理条件;基于所述历史数据清理条件和所述
4、在本公开可选实施例中,所述利用所述数据留存时间和所述滚动清理周期,确定数据增量时间,根据所述数据增量时间,确定数据库对应的无效数据清理条件,包括:计算所述数据留存时间和所述滚动清理周期的比值,根据计算的比值确定所述数据增量时间;设置所述无效数据清理条件为清理所述数据库中在所述数据增量时间范围内的无效数据;其中,所述无效数据为符合预设无效条件的数据。
5、在本公开可选实施例中,所述无效数据清理条件包括一个或多个子条件;其中,所述设置所述无效数据清理条件为清理所述数据库中在所述数据增量时间内的无效数据,包括:将所述数据增量时间拆分为一个或多个增量时间分段;对于各个所述增量时间分段,设置所述增量时间分段对应的子条件;其中,所述增量时间分段对应的子条件用于清理所述增量时间分段内的无效数据。
6、在本公开可选实施例中,所述将所述数据增量时间拆分为一个或多个增量时间分段,包括:获取所述数据库的数据总量和所述数据库的无效数据数量;计算所述无效数据数量占所述数据总量的比例,确定计算的比例为无效数据占比;根据所述无效数据占比和预设的数据清理时间,确定分段数量;所述分段数量与所述无效数据占比成正比关系,所述分段数量与所述预设的数据清理时间成反比关系;根据所述分段数量对所述数据增量时间进行拆分,获得所述一个或多个增量时间分段。
7、在本公开可选实施例中,所述根据所述数据留存时间,确定数据库对应的历史数据清理条件,包括:设置所述历史数据清理条件为清理所述数据库中在所述数据留存时间范围外的数据。
8、在本公开可选实施例中,所述基于所述历史数据清理条件和所述无效数据清理条件,删除所述数据库中的数据,包括:获取预设批次大小;按照所述预设批次大小,基于所述历史数据清理条件和所述无效数据清理条件,对所述数据库中的数据进行批次删除。
9、在本公开可选实施例中,所述按照所述预设批次大小,基于所述历史数据清理条件和所述无效数据清理条件,对所述数据库中的数据进行批次删除,包括:在执行当前批次的数据删除操作时,按照所述预设批次大小,查询所述数据库中满足所述历史数据清理条件或所述无效数据清理条件的数据对应的数据标识;删除所述数据库中查询的数据标识对应的数据,获得当前批次的数据删除结果;若所述当前批次的数据删除结果中的已删除数据的数量小于所述预设批次大小,则确定所述数据库的数据清理完成;若所述当前批次的数据删除结果中的已删除数据的数量大于等于所述预设批次大小,则按照所述预设批次大小执行下一批次的数据删除操作。
10、根据本公开的又一个方面,提供一种数据库的数据清理装置,包括:参数获取模块,用于获取数据库的清理参数,所述数据库的清理参数包括数据库的数据留存时间和数据库的滚动清理周期;第一条件确定模块,用于根据所述数据留存时间,确定数据库对应的历史数据清理条件;第二条件确定模块,用于利用所述数据留存时间和所述滚动清理周期,确定数据增量时间,根据所述数据增量时间,确定数据库对应的无效数据清理条件;数据删除模块,用于基于所述历史数据清理条件和所述无效数据清理条件,删除所述数据库中的数据。
11、在本公开可选实施例中,所述第二条件确定模块还用于:计算所述数据留存时间和所述滚动清理周期的比值,根据计算的比值确定所述数据增量时间;设置所述无效数据清理条件为清理所述数据库中在所述数据增量时间范围内的无效数据;其中,所述无效数据为符合预设无效条件的数据。
12、在本公开可选实施例中,所述无效数据清理条件包括一个或多个子条件;其中,所述第二条件确定模块还用于:将所述数据增量时间拆分为一个或多个增量时间分段;对于各个所述增量时间分段,设置所述增量时间分段对应的子条件;其中,所述增量时间分段对应的子条件用于清理所述增量时间分段内的无效数据。
13、在本公开可选实施例中,所述第二条件确定模块还用于:获取所述数据库的数据总量和所述数据库的无效数据数量;计算所述无效数据数量占所述数据总量的比例,确定计算的比例为无效数据占比;根据所述无效数据占比和预设的数据清理时间,确定分段数量;所述分段数量与所述无效数据占比成正比关系,所述分段数量与所述预设的数据清理时间成反比关系;根据所述分段数量对所述数据增量时间进行拆分,获得所述一个或多个增量时间分段。
14、在本公开可选实施例中,所述第一条件确定模块还用于:设置所述历史数据清理条件为清理所述数据库中在所述数据留存时间范围外的数据。
15、在本公开可选实施例中,所述数据删除模块还用于:获取预设批次大小;按照所述预设批次大小,基于所述历史数据清理条件和所述无效数据清理条件,对所述数据库中的数据进行批次删除。
16、在本公开可选实施例中,所述数据删除模块还用于:在执行当前批次的数据删除操作时,按照所述预设批次大小,查询所述数据库中满足所述历史数据清理条件或所述无效数据清理条件的数据对应的数据标识;删除所述数据库中查询的数据标识对应的数据,获得当前批次的数据删除结果;若所述当前批次的数据删除结果中的已删除数据的数量小于所述预设批次大小,则确定所述数据库的数据清理完成;若所述当前批次的数据删除结果中的已删除数据的数量大于等于所述预设批次大小,则按照所述预设批次大小执行下一批次的数据删除操作。
17、根据本公开的又一个方面,提供一种计算机可读存储介质,其上存储有计算机本文档来自技高网...
【技术保护点】
1.一种数据库的数据清理方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述利用所述数据留存时间和所述滚动清理周期,确定数据增量时间,根据所述数据增量时间,确定数据库对应的无效数据清理条件,包括:
3.根据权利要求2所述的方法,其特征在于,所述无效数据清理条件包括一个或多个子条件;
4.根据权利要求3所述的方法,其特征在于,所述将所述数据增量时间拆分为一个或多个增量时间分段,包括:
5.根据权利要求1所述的方法,其特征在于,所述根据所述数据留存时间,确定数据库对应的历史数据清理条件,包括:
6.根据权利1所述的方法,其特征在于,所述基于所述历史数据清理条件和所述无效数据清理条件,删除所述数据库中的数据,包括:
7.根据权利要求6所述的方法,其特征在于,所述按照所述预设批次大小,基于所述历史数据清理条件和所述无效数据清理条件,对所述数据库中的数据进行批次删除,包括:
8.一种数据库的数据清理装置,其特征在于,包括:
9.一种计算机可读存储介质,其上存储有计算机程序,所
10.一种电子设备,其特征在于,包括:
...【技术特征摘要】
1.一种数据库的数据清理方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述利用所述数据留存时间和所述滚动清理周期,确定数据增量时间,根据所述数据增量时间,确定数据库对应的无效数据清理条件,包括:
3.根据权利要求2所述的方法,其特征在于,所述无效数据清理条件包括一个或多个子条件;
4.根据权利要求3所述的方法,其特征在于,所述将所述数据增量时间拆分为一个或多个增量时间分段,包括:
5.根据权利要求1所述的方法,其特征在于,所述根据所述数据留存时间,确定数据库对应的历史数据清理条件,包括:<...
【专利技术属性】
技术研发人员:崔立群,陈昊龙,刘建设,刘吓凤,陆宗艺,吴明波,邹培俊,李洁,
申请(专利权)人:北京京东乾石科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。