本发明涉及计算机网络通信,尤其涉及一种异常处理方法、装置、电子设备及可读存储介质。
背景技术:
1、greenplum是基于开源postgresql的分布式数据库,是一种mpp架构的olap计算引擎,greenplum采用share-nothing架构,其主机、操作系统、内存和磁盘都是每台服务器独占的。greenplum最大的特点就是基于低成本开放平台基础上提供强大的并行数据计算性和海量数据管理能力。其优势主要体现在对大任务,复杂任务的快速,高效计算。但是,对于大规模高负载场景下的greemplum集群,其稳定性是很容易被破坏的,典型的情况就是个别任务的异常执行,导致整个集群状态异常,影响整个集群任务的执行,甚至出现集群宕机的严重后果。
技术实现思路
1、有鉴于此,本发明实施例提供了一种异常处理方法,以解决无法监控运行任务异常,且发现异常慢无法解决异常的问题。
2、根据本发明的一方面,提供了一种异常处理方法,包括:
3、接收第一输入,所述第一输入为待处理对象的运行任务的第一信息,所述第一信息包括但不仅限于所述运行任务的执行信息、日志信息和系统表信息;
4、响应于所述第一输入,获取所述运行任务的内存参数、cpu参数和磁盘参数;
5、接收第二输入,所述第二输入为所述运行任务的内存阈值、cpu阈值和磁盘阈值;
6、响应于所述第二输入,对超出所述运行任务的内存阈值、cpu阈值或磁盘阈值的目标运行任务进行异常处理。
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、第一获取模块,响应于所述第一输入,获取所述运行任务的内存参数、cpu参数和磁盘参数;
33、第二接收模块,用于接收第二输入,所述第二输入为所述运行任务的内存阈值、cpu阈值和磁盘阈值;
34、第一处理模块,响应于所述第二输入,对超出所述运行任务的内存阈值、cpu阈值或磁盘阈值的目标运行任务进行异常处理。
35、可选地,所述异常处理装置,还包括:
36、计算模块,响应于所述第一输入,计算所述运行任务产生的溢出文件的总和;
37、第三接收模块,用于接收第三输入,所述第三输入为产生溢出文件的第一阈值;
38、第二处理模块,响应于所述第三输入,在所述运行任务产生的溢出文件的总和超出所述第一阈值的情况下,对超出所述第一阈值的目标运行任务进行异常处理。
39、根据本发明的第三方面,提供了一种电子设备,包括:
40、处理器;以及
41、存储程序的存储器,
42、其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行根据本发明第一方面中任一项所述的方法。
43、根据本发明的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使计算机执行根据本发明第一方面中任一项所述的方法。
44、本申请实施例中提供的一个或多个技术方案,针对大规模,高负载场景下的集群,利用运行任务的执行信息、日志信息和系统表信息,以低介入的方式,实时对集群中运行的异常任务进行发现和处理,从而保证集群在高负载下的稳定性和可用性,维持集群健康的运行状态。
1.一种异常处理方法,其特征在于,包括:
2.根据权利要求1所述的异常处理方法,其特征在于,在所述待处理对象的运行任务为产生溢出文件的运行任务时,按时间间隔接收所述第一输入;
3.根据权利要求1所述的异常处理方法,其特征在于,在所述待处理对象的运行任务为分区表全表扫描的运行任务时,按时间间隔接收所述第一输入,所述第一信息包括但不仅限于所述运行任务的任务列表;
4.根据权利要求1所述的异常处理方法,其特征在于,在所述待处理对象的运行任务为将两张分区表进行关联的运行任务时,按时间间隔接收所述第一输入,所述第一信息包括但不仅限于所述运行任务的任务列表;
5.根据权利要求1所述的异常处理方法,其特征在于,在所述待处理对象的运行任务为超时的运行任务时,按时间间隔接收所述第一输入;
6.根据权利要求1至5中任一项所述的异常处理方法,其特征在于,所述进行异常处理,包括:
7.一种异常处理装置,其特征在于,包括:
8.根据权利要求7所述的异常处理装置,其特征在于,所述异常处理装置,还包括:
9.一种电子设备,包括:
10.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使计算机执行根据权利要求1-6中任一项所述的方法。