论文部分内容阅读
随着计算机技术的快速发展和信息化的不断深入,大型互联网企业产生的日志量也呈现出爆炸式增长。通过分析和检测日志,及时发现用户行为和系统状态的异常,对于提高用户满意度和系统稳定性具有重要作用。传统的日志异常检测采用先存储后处理的方式,但是随着海量日志时代的到来,这一方式面临存储空间占用过高以及实时性差的瓶颈,所以迫切需要研究新的日志异常检测架构和算法。因此针对海量日志实时异常检测的课题,本文分别从检测算法和实时计算两方面进行研究:(1)对日志流进行异常检测,一般采用基于规则匹配的方式,但是效率较低,因此本文研究了文本日志的数值化表示方法,提出了利用信息含量来表征日志。由于直接计算信息含量复杂度较高,所以用无损压缩与信息含量之间的关系间接的估计信息含量。为了满足日志流压缩的特殊需求,本文在序列压缩算法的基础上提出了一种适合于日志流场景的无损压缩算法LSCA。文本日志转换成数值形式后,通过引入高斯过程回归模型,提出了基于GPR预判模型的日志流异常检测算法,将实际收到的数据值与预估的数据值比较,看其是否在偏差范围之内来判定日志是否异常。(2)基于GPR的预判模型可以有效的检测孤立异常,但是对局部异常检测效率不高。为了解决这个问题,本文引入采样的方法,提出了适合日志流场景的采样算法LSUS,将其与GPR结合形成了新的模型LSUS_GPR,然后把新模型推广到全局异常检测。实验表明新模型的计算复杂度和误判率都明显降低,提高了检测效率。(3)借助于JStorm流式计算框架,本文设计并实现了基于GPR预判模型的日志流实时异常检测系统LRADS。针对LRADS系统,分别从总体设计和性能优化两个方面进行讲述。总体设计方面,主要介绍了核心部分日志采集和实时检测模块。性能优化方面,提出了离线和在线调度优化方法。最后系统测评表明LRADS稳定高效,具备生产环境使用价值。