论文部分内容阅读
近几年来,随着互联网应用技术的飞速发展,各种服务器和网络设备产生的数据量正呈现出爆炸式的增长。因此,在大数据和数据挖掘领域,对海量日志数据进行分析和处理的技术正在成为当前研究的技术热点。传统的日志分析方案大多数都得到了比较成功的应用,但是却在日志数据的采集、实时性计算以及数据可视化等方面存在问题。本文通过对传统的数据处理技术和当前流行的大数据解决方案进行分析和比较,针对大数据处理技术中的批处理技术和实时流处理技术,设计并实现了一个基于实时数据处理技术的海量安全日志分析系统。本文的主要工作有以下几方面:1、日志分析系统的总体设计。在深入研究了 ELK Stack技术和Storm实时处理技术的基础之上,结合传统日志分析系统存在的不足,得出基于ELK Stack的实时日志分析系统需要具备分布式日志采集功能、消息发布/订阅功能、日志数据实时计算功能、分布式数据存储功能以及数据可视化功能。基于这些功能,进行了系统的总体设计,分析了系统需要满足的需求和达到的目标,对系统的整体架构、模块划分和业务流程等方面进行了规划和设计。2、日志分析系统的详细设计与实现。搭建并实现了基于ELK Stack的实时日志分析系统,其中实现了分布式日志采集模块、消息发布/订阅模块、实时计算模块和分布式数据存储模块等。针对各个功能模块,设计了各模块的基础架构,梳理了各模块的业务流程,然后对各模块的基础组件进行了详细的设计和实现。本系统的各个功能模块互相配合,共同协作,能够实现安全日志的采集、分析、计算和存储等功能。3、日志分析系统的数据可视化与系统测试。基于Nutz框架技术,搭建了结果可视化Web服务,对系统中的数据进行了可视化展示,提供了对安全日志分析结果进行查询的接口,将设备的安全态势实时、动态地展示给用户。另外,在分布式集群中搭建了测试环境,对系统的各个功能模块进行了测试。通过分析系统测试的结果,对系统的功能特点和性能指标进行了验证,表明本系统具有实时性、可靠性、分布式计算、易扩展和稳定性高等特性。