一种基于Hadoop的网络安全日志k-means聚类分析系统及方法

文档序号:9417493阅读:561来源:国知局
一种基于Hadoop的网络安全日志k-means聚类分析系统及方法
【技术领域】
[0001]本发明属于计算机信息处理技术领域,具体涉及一种基于Hadoop的网络安全日志k-means聚类分析系统及方法。
【背景技术】
[0002]随着数据的爆炸,信息量的急剧增加,企业现有的传统数据仓库已经难以应付数据的增长速度。传统数据仓库通常采用高性能一体机建设,成本高,扩展性差,而且传统数据仓库仅擅长处理结构化数据,这种特性影响到传统数据仓库在面对海量异构数据时对于内在价值的挖掘,这是Hadoop与传统数据处理方式最大的区别。对于企业现有传统数据仓库我们要合理利用,同时要把已有的传统数据仓库和大数据平台整合在一起,建立一个统一的数据分析和数据处理架构,使得通过Hadoop与传统数据仓库的协作实现对网络日志的监控统计分析。
[0003]Hadoop是Apache组织管理的一个开源分布式计算平台,是一个能够对大量数据进行分布式处理的软件框架。以Hadoop分布式文件系统HDFS和MapReduce为核心的Hadoop为用户提供了系统底层细节透明的分布式基础架构。HDFS的高容错性、高伸缩性、高可扩展性、高获得性、高吞吐率等优点允许用户将Hadoop部署在低廉的硬件上,形成分布式系统;MapReduCe分布式编程模型允许用户在不了解分布式系统底层细节的情况下开发并行应用程序。
[0004]HDFS是分布式计算中数据存储管理的基础,是基于流数据模式访问和处理超大文件的需求而开发的。它的特性为海量数据提供了不怕故障的存储,为超大数据集的应用处理带来了很多便利。HDFS是一个主/从(Mater/Slave)体系结构,其体系结构中有两类节点,一类是NameNode,又叫〃元数据节点〃;另一类是DataNode,又叫〃数据节点〃,这两类节点分别承担Master和Worker具体任务的执行节点。但由于分布式存储的性质,HDFS集群拥有一个NameNode和多个DataNode。元数据节点用来管理文件系统的命名空间;数据节点是文件系统中真正存储数据的地方。
[0005]MapReduce并行计算框架是一个并行化程序执行系统。它提供了一个包含Map和Reduce两个阶段的并行处理模型和过程,以键值对数据输入方式来处理数据,并能自动完成数据的划分和调度管理。在程序执行中,MapReduce并行计算框架将负责调度和分配计算资源,划分和输入输出数据,调度程序的执行,监控程序的执行状态,并负责程序执行时各计算节点的同步以及中间结果的收集整理。
[0006]Sqoop是一个在关系数据库与Hadoop平台间进行快速批量数据交换的工具。它可以将一个关系数据库中的数据批量导入Hadoop的HDFS、Hive中,也可以反过来将Hadoop平台中的数据导入关系数据库中。
[0007]Hive是一个建立在Hadoop之上的数据仓库,用于管理存储于HDFS中的结构化/半结构化数据。它允许直接用类似SQL的HiveQL查询语言作为编程接口编写数据查询分析程序,并提供数据仓库所需要的数据抽取转换、存储管理和查询分析功能,而HiveQL语句在底层实现时被转换为相应的MapReduce程序加以执行。

【发明内容】

[0008]为克服上述现有技术的不足,本发明的目的在于提供一种基于Hadoop的网络安全日志k-means聚类分析系统及方法,在合理利用已建好的传统数据仓库的基础上,把大数据平台整合进去,建立一个统一的数据存储和数据处理架构,克服传统数据仓库的扩展能力差,仅擅长处理结构化数据,无法对海量异构数据的内在价值进行挖掘的缺点。
[0009]为实现上述目的,本发明采用的技术方案是:一种基于Hadoop的网络安全日志k-means聚类分析系统,包括有日志数据获取子系统、日志数据混合机制存储管理子系统、日志数据分析子系统;
所述日志数据获取子系统是采集所有设备的网络安全日志数据;
所述日志数据混合机制存储管理子系统是对所有日志数据进行管理与存储;
所述日志数据分析子系统是对所有日志数据进行快速查询分析处理,以及对日志数据的潜在价值进行挖掘分析。
[0010]所述日志数据获取子系统在Linux环境下,配置Syslogd集中日志服务器,采用Syslog方式采集记录设备和系统日志数据,并将日志数据集中管理。
[0011]所述日志数据混合机制存储管理子系统,整合Hadoop平台和传统数据仓库,包括HDFS分布式文件系统模块,Hadoop平台和传统数据仓库协作模块。
[0012]所述日志数据查询分析子系统,主要采用工具hive对数据进行简单的统计查询分析,根据需求,编写HiveQL查询语句,在Hive Driver的驱动下,完成HiveQL查询语句中词法分析、语法分析、编译、优化以及查询计划的生成,生成的查询计划存储在HDFS中,并在随后由MapReduce调用执行,对于日志数据中潜在的信息的分析,通过编写实现相应算法的MapReduce程序来挖掘其内在价值。
[0013]所述HDFS分布式文件系统模块的基本文件访问过程是:
1)应用程序通过HDFS的客户端程序将文件名发送至NameNode;
2)NomeNode接收到文件名之后,在HDFS目录中检索文件名对应的数据块,再根据数据块信息找到保存数据块DataNode地址,将这些地址回送到客户端;
3)客户端接收到这些DataNode地址之后,与这些DataNode并行地进行数据传输操作,同时将操作结果的相关日志提交到NameNode。
[0014]所述Hadoop平台和传统数据仓库协作模块,配置MySQL数据库作为Hive的元数据库,用于存储Hive的Schema表结构信息等,通过Sqoop工具实现数据在传统数据仓库和Hadoop平台之间的传输。
[0015]以Hadoop集群为平台,整合传统数据仓库和大数据平台,将MySQL数据库作为Hive的元数据库,用于存储Hive的Schema表结构信息,使用Sqoop工具实现数据在传统数据仓库和大数据平台之间的传输;包括有数据源层、数据存储层、计算层、数据分析层和结果显示层;
所述的数据源层,通过配置Syslogd集中日志服务器,采集所有设备中的日志数据,再通过Sqoop工具将日志数据从传统数据仓库导入到数据存储层; 所述的数据存储层,采用Hadoop与传统数据仓库协作的混合存储架构,通过Sqoop数据传输工具将数据导入到HDFS中,处理元数据,将处理后的数据导入到Hive中对应的表里;
所述的结果显示层,用户发出请求到数据分析层;
所述的数据分析层,将用户发送的请求转换为相应的HiveQL语句,在Hive Driver的驱动下,完成执行操作;
所述的计算层,从Hive引擎接收指令,并通过数据存储层的HDFS,配合MapReduce实现数据的处理分析,最终将结果返回结果显示层。
[0016]—种基于Hadoop的网络安全日志k-means聚类分析方法,其特征在于,包括以下步骤:
1)日志数据预处理,转换日志描述信息的文本内容的Syslog_incoming_mes文件为一个文本向量文件;
2)基于MapReduce的k-means算法的实现,在文本向量上运行k-means聚类算法。
[0017]所述的日志数据预处理,包括以下步骤:
1)去虚词,去除日志描述信息文本中无实意的词;
2)标记词性,本系统使用english_left3words-distsim.tagger分词器来标记每条日志描述中的单词;
3)提取有用词,通过分词之后,系统提取的是名词(NN,NNS,NNP, NNPS)、动词(VB,VBP,VBN, VBD)和形容词(JJ,JJR, JJS),这些词都具有实际的意思,能准确表达日志信息;
4)获取频繁字典,对所有记录统计频率,高频的词就在该描述领域内具有代表作用,超过阈值的词作为keyword元素,选取出频繁字典,使用频繁字典能够有效的表达日志信息;
5)生成文本向量文件,对比日志描述字段和频繁字典得到由一连串0,1组成的keyspace,多个keyspace集合构成文本向量文件。
[0018]所述的基于MapReduce的k-means算法的实现,包括以下步骤:
O扫描原始数据集合中的所有的点,并随机选取k个点作为初始的簇中心;
2)各个Map节点读取存在本地的数据集,用k-means算法生成聚类集合,最后在Reduce阶段用若干聚类集合生成新的全局聚类中心,重复这一过程直到满足结束条件;
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1