本技术涉及数据库维护,尤其涉及一种数据库表空间的清理方法、装置及电子设备。
背景技术:
1、在数据库中的表空间提供数据查询服务的过程中,业务数据不断增长;为了满足高并发数据查询下的数据库性能需求,需要及时对数据库中的表空间进行空间清理。
2、现有技术中,针对目标表空间,设定一个表空间大小阈值,当监测到目标表空间大小超过表空间大小阈值时,自动对该目标表空间进行空间清理。
3、但是上述方式中,当目标表空间中数据量迅速增长时,来不及对目标表空间进行清理,导致目标表空间中的无效数据增多,进而影响数据库的数据查询效率。
技术实现思路
1、本技术提供一种数据库表空间的清理方法、装置及电子设备,用以解决因数据量迅速增长时来不及对目标表空间进行清理导致数据库的数据查询效率低的问题。
2、第一方面,本技术提供一种数据库表空间的清理方法,所述方法包括:
3、获取数据库表空间的空间信息;其中,所述空间信息表征所述数据库表空间存储数据时的数据占用表空间的情况;所述空间信息包括历史时间段内每一时刻下所述数据库表空间的空间信息数据;
4、对所述数据库表空间的空间信息进行处理,得到所述数据库表空间的第一预测时刻;其中,所述第一预测时刻为预测的预设时间段内所述数据库表空间的空间信息数据等于预设阈值的时刻;
5、在所述数据库表空间的第一预测时刻之前,对所述数据库表空间进行清理处理。
6、一个示例中,所述空间信息为表空间大小信息,或者表页文件的信息密度,或者索引文件的信息密度;其中,所述表页文件的信息密度为表页文件中有效元组数据的数据量占据全部元组数据的数据量的百分比重;所述索引文件的信息密度为索引文件中被数据占用的空间大小占据全部可用空间大小的百分比重。
7、一个示例中,对所述数据库表空间的空间信息进行处理,得到所述数据库表空间的第一预测时刻,包括:
8、将所述数据库表空间的空间信息输入至预设的预测模型中,输出所述数据库表空间的预测信息;其中,所述预测信息表征预测的在所述预设时间段内每一时刻下所述数据库表空间的空间信息数据;
9、将所述数据库表空间的预测信息中每一时刻下的空间信息数据和所述预设阈值进行对比,确定至少一个第二预测时刻;其中,所述第二预测时刻为预测的在所述预设时间段内所述数据库表空间的空间信息数据等于所述预设阈值的时刻;
10、将各所述第二预测时刻中最早的时刻,确定为所述数据库表空间的第一预测时刻。
11、一个示例中,将所述数据库表空间的空间信息输入至预设的预测模型中,输出所述数据库表空间的预测信息,包括:
12、基于所述预设的预测模型,对所述数据库表空间的空间信息进行处理,得到拟合参数信息;其中,所述拟合参数信息表征所述数据库表空间的空间信息数据的数据特征;
13、根据所述拟合参数信息,对所述预设的预测模型进行拟合处理,得到处理后的预测模型;
14、基于所述处理后的预测模型,对所述数据库表空间的空间信息进行处理,得到所述数据库表空间的预测信息。
15、一个示例中,所述拟合参数信息包括差分参数、自相关参数以及偏自相关参数;其中,所述差分参数表征空间信息被差分处理的处理次数;所述自相关参数表征空间信息中任一两个时刻下的空间信息数据之间的相关程度;所述偏自相关参数表征空间信息中任一两个时刻下的空间信息数据之间的相关程度;
16、基于所述预设的预测模型,对所述数据库表空间的空间信息进行处理,得到拟合参数信息,包括:
17、基于所述预设的预测模型,对所述数据库表空间的空间信息进行差分处理,得到所述数据库表空间的空间信息所对应的差分参数;
18、基于所述预设的预测模型,根据所述数据库表空间的空间信息,创建所述数据库表空间的空间信息对应的自相关函数图以及偏自相关函数图;其中,所述自相关函数图表征空间信息中任一两个时刻下的空间信息数据之间的相关性;所述偏自相关函数图表征空间信息中任一两个时刻下的空间信息数据之间的相关性;
19、根据所述自相关函数图,确定所述自相关函数图的自相关参数;并根据所述偏自相关函数图,确定所述偏自相关函数图的偏自相关参数。
20、一个示例中,若空间信息为表空间大小信息时,所述差分参数表征表空间大小信息被差分处理的处理次数;所述自相关参数表征任一两个时刻下的表空间大小之间的相关程度;所述偏自相关参数表征任一两个时刻下的表空间大小数据之间的相关程度;
21、若空间信息为表页文件的信息密度时,所述差分参数表征表页文件的信息密度被差分处理的处理次数;所述自相关参数表征任一两个时刻下的表页文件的信息密度之间的相关程度;所述偏自相关参数表征任一两个时刻下的表页文件的信息密度之间的相关程度;
22、若空间信息为索引文件的信息密度时,所述差分参数表征索引文件的信息密度被差分处理的处理次数;所述自相关参数表征任一两个时刻下的索引文件的信息密度之间的相关程度;所述偏自相关参数表征任一两个时刻下的索引文件的信息密度之间的相关程度。
23、一个示例中,在所述数据库表空间的第一预测时刻之前,对所述数据库表空间进行清理处理,包括:
24、对所述数据库表空间进行检查,得到检查信息;其中,所述检查信息表征当前所述数据库表空间是否正在被访问;
25、若确定所述检查信息表征当前所述数据库表空间正在被访问,则在所述数据库表空间的第一预测时刻之前、且处于中断服务时段中的任一时刻,对所述数据库表空间进行清理处理;其中,所述中断服务时段为预先设置的所述数据库表空间不提供访问服务的时段;
26、若确定所述检查信息表征当前所述数据库表空间未正在被访问,则在当前时刻,对所述数据库表空间进行清理处理。
27、一个示例中,在对所述数据库表空间的空间信息进行处理,得到所述数据库表空间的第一预测时刻之前,包括:
28、对所述空间信息进行平稳化处理,得到至少一个处理后的空间信息。
29、第二方面,本技术提供一种数据库表空间的清理装置,所述装置包括:
30、获取单元,用于获取数据库表空间的空间信息;其中,所述空间信息表征所述数据库表空间存储数据时的数据占用表空间的情况;所述空间信息包括历史时间段内每一时刻下所述数据库表空间的空间信息数据;
31、预测单元,用于对所述数据库表空间的空间信息进行处理,得到所述数据库表空间的第一预测时刻;其中,所述第一预测时刻为预测的预设时间段内所述数据库表空间的空间信息数据等于预设阈值的时刻;
32、清理单元,用于在所述数据库表空间的第一预测时刻之前,对所述数据库表空间进行清理处理。
33、一个示例中,所述空间信息为表空间大小信息,或者表页文件的信息密度,或者索引文件的信息密度;其中,所述表页文件的信息密度为表页文件中有效元组数据的数据量占据全部元组数据的数据量的百分比重;所述索引文件的信息密度为索引文件中被数据占用的空间大小占据全部可用空间大小的百分比重。
34、一个示例中,所述预测单元,包括:
35、预测模块,用于将所述数据库表空间的空间信息输入至预设的预测模型中,输出所述数据库表空间的预测信息;其中,所述预测信息表征预测的在所述预设时间段内每一时刻下所述数据库表空间的空间信息数据;
36、第一确定模块,用于将所述数据库表空间的预测信息中每一时刻下的空间信息数据和所述预设阈值进行对比,确定至少一个第二预测时刻;其中,所述第二预测时刻为预测的在所述预设时间段内所述数据库表空间的空间信息数据等于所述预设阈值的时刻;
37、第二确定模块,用于将各所述第二预测时刻中最早的时刻,确定为所述数据库表空间的第一预测时刻。
38、一个示例中,所述预测模块,包括:
39、处理子模块,用于基于所述预设的预测模型,对所述数据库表空间的空间信息进行处理,得到拟合参数信息;其中,所述拟合参数信息表征所述数据库表空间的空间信息数据的数据特征;
40、拟合子模块,用于根据所述拟合参数信息,对所述预设的预测模型进行拟合处理,得到处理后的预测模型;
41、预测子模块,用于基于所述处理后的预测模型,对所述数据库表空间的空间信息进行处理,得到所述数据库表空间的预测信息。
42、一个示例中,所述拟合参数信息包括差分参数、自相关参数以及偏自相关参数;其中,所述差分参数表征空间信息被差分处理的处理次数;所述自相关参数表征空间信息中任一两个时刻下的空间信息数据之间的相关程度;所述偏自相关参数表征空间信息中任一两个时刻下的空间信息数据之间的相关程度;
43、所述处理子模块,具体用于:
44、基于所述预设的预测模型,对所述数据库表空间的空间信息进行差分处理,得到所述数据库表空间的空间信息所对应的差分参数;
45、基于所述预设的预测模型,根据所述数据库表空间的空间信息,创建所述数据库表空间的空间信息对应的自相关函数图以及偏自相关函数图;其中,所述自相关函数图表征空间信息中任一两个时刻下的空间信息数据之间的相关性;所述偏自相关函数图表征空间信息中任一两个时刻下的空间信息数据之间的相关性;
46、根据所述自相关函数图,确定所述自相关函数图的自相关参数;并根据所述偏自相关函数图,确定所述偏自相关函数图的偏自相关参数。
47、一个示例中,若空间信息为表空间大小信息时,所述差分参数表征表空间大小信息被差分处理的处理次数;所述自相关参数表征表任一两个时刻下的表空间大小之间的相关程度;所述偏自相关参数表征任一两个时刻下的表空间大小数据之间的相关程度;
48、若空间信息为表页文件的信息密度时,所述差分参数表征表页文件的信息密度被差分处理的处理次数;所述自相关参数表征任一两个时刻下的表页文件的信息密度之间的相关程度;所述偏自相关参数表征任一两个时刻下的表页文件的信息密度之间的相关程度;
49、若空间信息为索引文件的信息密度时,所述差分参数表征索引文件的信息密度被差分处理的处理次数;所述自相关参数表征任一两个时刻下的索引文件的信息密度之间的相关程度;所述偏自相关参数表征任一两个时刻下的索引文件的信息密度之间的相关程度。
50、一个示例中,所述清理单元,包括:
51、检查模块,用于对所述数据库表空间进行检查,得到检查信息;其中,所述检查信息表征当前所述数据库表空间是否正在被访问;
52、第一清理模块,用于若确定所述检查信息表征当前所述数据库表空间正在被访问,则在所述数据库表空间的第一预测时刻之前、且处于中断服务时段中的任一时刻,对所述数据库表空间进行清理处理;其中,所述中断服务时段为预先设置的所述数据库表空间不提供访问服务的时段;
53、第二清理模块,用于若确定所述检查信息表征当前所述数据库表空间未正在被访问,则在当前时刻,对所述数据库表空间进行清理处理。
54、一个示例中,在所述清理单元用于对所述数据库表空间的空间信息进行处理,得到所述数据库表空间的第一预测时刻之前,包括:
55、处理单元,用于对所述空间信息进行平稳化处理,得到处理后的空间信息。
56、第三方面,本技术提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
57、所述存储器存储计算机执行指令;
58、所述处理器执行所述存储器存储的计算机执行指令,以实现第一方面所述的方法。
59、第四方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现第一方面所述的方法。
60、第五方面,本技术提供一种计算机程序产品,所述计算机程序产品包括:计算机程序,所述计算机程序存储在可读存储介质中,电子设备的至少一个处理器可以从所述可读存储介质读取所述计算机程序,所述至少一个处理器执行所述计算机程序,使得电子设备执行第一方面所述的方法。
61、本技术提供的数据库表空间的清理方法、装置及电子设备,采集近期一段时间内每一时刻下的数据库表空间的空间信息,然后对采集到的空间信息进行预测分析,可以得到该数据库表空间的空间信息到达预设阈值的时刻,在预测到的到达阈值的时刻之前,及时对该数据库表空间进行空间清理处理;进而,通过对数据库表空间的增长情况进行预测,可以及时清理数据库表空间,提高数据查询效率。