Gbase资源使用情况异常
一、场景简要描述
Gbase软件异常,或者异常SQL导致Gbase内存溢出,使用内存不断增加,不及时处理会导致Swap空间占满,系统异常宕机。CPU的大部分时间花在系统切换上,Gbase同时处理的并发过高,并且存在几个超长任务(超过2小时未执行完)。集群单个节点或多个节点DISKBUSY原高于其他节点(如超过12时间DISKBUSY高于80%)。集群中单个节点或多个节点磁盘空间使用超过80%,因GBase集群数据节点须保留20%~30%作为临时空间,磁盘总空间满后,部分SQL会报错,甚至可能到会GBase服务进程crash。
二、处置步骤及每步所需时长
Gbase软件异常,或者异常SQL导致Gbase内存溢出,使用内存不断增加,不及时处理会导致Swap空间占满,系统异常宕机。此种异常大多由于Gbase软件或异常SQL导致,需要通知应用协助排查问题原因。
1)通知应用部门,目前系统状态异常,协助排查故障原因。
2)分析系统中运行的异常SQL。
3)通知运行部门停止产生问题的SQL。
4)操作系统清理内存,降低Swap使用率。
5)协助开发优化异常SQL,避免未经测试的SQL运行在生产环境。
CPU的大部分时间花在系统切换上,Gbase同时处理的并发过高,并且存在几个超长任务(超过2小时未执行完)。此种异常大多由于业务调度的并发过高引起,会导致任务处理的整体速度降低。
1)通知运行部门,目前系统状态异常,协助排查故障原因。
2)分析系统中并发运行的任务数。
3)如果并发过高,通知运行部门降低并发数。如果存在超长SQL,商量是否需要先杀掉,以避免拉低整体性能。
4)协助开发优化异常SQL,避免未经测试的SQL运行在生产环境。避免在统一调度系统之外,手工调起作业。
集群单个节点或多个节点DISKBUSY原高于其他节点(如超过12时间DISKBUSY高于80%)。此种异常大多由于硬盘故障或硬盘背板、RAID卡故障引起,会导致任务处理的整体速度降低。
1)通知运行部门,目前系统状态异常,协助排查故障原因。
2)厂商抓取硬件运行日志,并分析。
3)如果并发过高,通知运行部门降低并发数。如果存在超长SQL,商量是否需要先杀掉,以避免拉低整体性能。
4)厂商分析日志确定故障硬件后,更换硬件,如更换硬件需停止操作系统,需停止集群服务。
5)恢复服务。
集群中单个节点或多个节点磁盘空间使用超过80%,因GBase集群数据节点须保留20%~30%作为临时空间,磁盘总空间满后,部分SQL会报错,甚至可能到会GBase服务进程crash。一般情况下短时间内磁盘使用大幅上升是由笛卡尔乘积SQL或GBase执行计划bug导致。
1)通知运行部门,目前系统状态异常,协助排查故障原因。
2)分析GBase临时空间使用情况。
3)分析运行SQL情况,确定哪条SQL导致。
4)Kill SQL,观察空间是否释放。
5)如笛卡尔乘积,则反馈开发部分进行处理;如GBase执行计划问题,反馈数据库厂商,要求提供短期解决方案及后期修复计划。
恢复服务。
评论
热门帖子
- 12025-12-01浏览数:182764
- 22023-05-09浏览数:25062
- 42023-09-25浏览数:18526
- 52020-05-11浏览数:17529