数据库运维的那些难题,我们用机器学习解决了
这种方法确实会减少一部分告警,但是还有一些显而易见的告警可以通过制定规则的方法来实现进一步的告警收敛。比如同一个集群内的数据库都出现了ping不通的问题,,又比如同一个网段内的所有IP流量突增,就可以将这些告警整合后再发送。 而在AIOps时代,告警收敛和根因分析往往是一起进行的。 和根因分析方法二类似,我们可以先获取告警项集数据,并提取频繁项。如果在频繁告警项集中,告警A和告警B经常一起出现并且在A出现的时间比B早,则在邮件告警中,我们可以忽略B告警,只将A告警推送给运维人员。 不同场景下的告警收敛有着不同的需求,和AIOps相比,传统的告警收敛方法更加简单和高效,基于规则的方法也具有很强的拓展性和解释性;而AIOps却能挖掘出我们利用常识和经验无法发现的关联项并进行告警收敛。 四、容量预测 容量预测在数据库运维中的很多地方都应用着,不同的应用场景有不同的特性,我们很难找到一个模型去适应所有的数据。 在容量预测上,我们的典型应用是数据库DB_SIZE容量预测,数据库容量具有总体上升、无规律、波动大的特点。对数据库容量进行合理的预测,短期可以提前发现可能的故障,进行主动预防和提前解决,无需在问题发生时被动处理;长期可以进行合理的容量规划和资源分配。 最开始,我们想到的是线性回归加上简单的数据预处理,但是结果十分不理想。由于业务规模的落差,不同数据库的容量有着很大的差别,并且在数据库进行导表,扩容等操作时,线性拟合或者非线性拟合的效果不尽人意。 显然,传统的线性回归方法虽然简单,但是预测效果较差,不能满足要求。为了解决这一问题,我们将容量数据进行了分类,分为周期型和突升突降型,分类的方法可以采用统计方法,也可以使用聚类或分类的方法。 对于周期型数据,我们可以认为其实线性可拟合的,因为在总体上升的趋势上,周期型的数据在周期内的增长值是线性递增的。对于这种类型的数据,我们可以采用线性回归的机器学习方法来对数据库容量进行预测。 周期型数据 而对于突增突降型的数据,线性拟合效果较差,这时我们使用环比增量求和的方法,求得历史数据中星期一到星期天的具体每天增量的加权平均值;再将这个增量应用到预测中。和单纯的线性拟合方法相比,这种方法的准确性提高了很多,平均预测数据的均方残差缩小了近一倍。 突升突降型数据 以上四个应用场景的技术开拓都是致力于通过AI让运维更加高效,让更多的故障可以被提前发现和解决。关于AIOps,我们还有很多东西可以去尝试和探索,如智能问答机器人、日志集中分析平台等,后续有相关成果再与大家分享。 【编辑推荐】
点赞 0 (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |