基于spark大数据平台的日志信息类型提取方法、挖掘方法技术

技术编号:28034934 阅读:29 留言:0更新日期:2021-04-09 23:16
本发明专利技术涉及计算机信息系统技术领域,公开了基于spark大数据平台的日志信息类型提取方法,包括:预处理离线日志数据,过滤掉不能识别的日志条目,存入HDFS中;将常规变量替换为通配符,同时对日志条目进行规整处理,完成简单的通配化处理,并将通配化处理后的数据临时存入HDFS中;将通配化处理后的数据进行时间根据时间窗进行过滤,将日志数据过滤拆分成有效日志集合和无效日志集合,去重后临时存入HDFS中;用迭代分组挖掘方法,分别计算出有效日志和无效日志的日志信息类型,将结果存入HDFS中。上述方案进行日志的自动化分析处理,有利于数据的恢复和使用,并能够高效准确地识别不同的日志信息类型。同时本发明专利技术也公开了时间窗过滤方法和迭代分组挖掘方法。

【技术实现步骤摘要】
基于spark大数据平台的日志信息类型提取方法、挖掘方法
本专利技术涉及计算机信息系统
,特别是基于spark大数据平台的日志信息类型提取方法、挖掘方法。
技术介绍
Spark大数据处理平台主要包括两部分:高效易用的Spark大数据处理框架和高可靠的分布式文件存储系统HDFS。大量的元数据存储在HDFS中,HDFS将文件分割成块并保存着多个副本,以防止服务器或硬盘偶然不可用问题;Spark框架的核心概念是弹性分布式数据集(ResilientDistributedDatasets,简称RDD),它表示一个不可变的已被分片的并能够被并行处理的数据集合。对RDD的操作分为两种:transformation和action。transformation是指将常规数据集构造成一个新RDD或从已有的RDD生成新的RDD;action是指通过对RDD的计算生成最终结果。在最新版的Spark中有丰富的transformation和action操作接口,这样会大大降低了程序开发周期并简化程序开发的难度。在计算机信息系统中,系统日志数据量巨大,特别是在现今的云环境下,日志数据每天都是几百G的增幅增加,这些日志数据中,往往会包含一些重要信息,如:系统的运行情况、用户的接入和使用、恶意用户的入侵和非法操作等,这样对云平台的日志分析和处理显得十分重要。由于日志数量巨大,我们迫切的需要一种方法对日志数据进行自动化处理,而不是传统的人工检测分析。由于系统的程序性特点,一个系统的日志信息类型是有限的,要进行日志自动化分析处理,首先就需要知道该系统的日志信息类型。因此需要从大量的离线日志数据中提取出云平台的日志信息类型,为后续的日志自动化分析处理提供基础支撑。
技术实现思路
本专利技术所要解决的技术问题是:针对上述存在的问题,提供了一种基于spark大数据平台的日志信息类型提取方法、挖掘方法。本专利技术采用的技术方案如下:一种基于spark大数据平台的云平台日志信息类型提取方法,包括:步骤S1,预处理离线日志数据,过滤掉不能识别的日志条目,过滤后的日志数据存入HDFS中;步骤S2,将常规变量替换为通配符,同时对日志条目进行规整处理,完成简单的通配化处理,并将通配化处理后的数据临时存入HDFS中;步骤S3,将通配化处理后的数据进行时间根据时间窗进行过滤,将日志数据过滤拆分成有效日志集合和无效日志集合,去重后临时存入HDFS中;步骤S4,针对步骤S3得到的有效日志集合和无效日志集合,将日志集合转换成以日志信息为元素的一维数组,根据数组长度结合形成二维数组,并进行特征位置分割,再将二维数组合并成一维数组,形成完整的日志消息类型,最终结果存入HDFS中。进一步的,所述步骤S1中的过滤方式采用以下方法:将日志数据的每条日志的头部信息进行时间的正则匹配,匹配成功则放入HDFS中。进一步的,所述步骤S3中根据时间窗进行过滤的方法为:步骤S31,从通配化处理后临时存入HDFS的数据中取出数据(根据情况取一天或者集几天或者全部数据),记为C;步骤S32,设置时间戳T,第一次执行取基础时间戳T=t1(如t1=5s,该值为经验值),将取出的日志数据C根据日志头部的时间按照T进行分割,形成多个集合时间小于等于T的时间窗日志集合其中Ci表示第i个集合,K为分割的集合数量,集合时间是指日志集合Ci中最晚日志时间与最早日志时间之差;步骤S33,取日志条数最大的日志集合中的每条日志,如果某条日志在所有的日志集合中,则认为该条日志为无效日志,将该无效日志存入临时的无效日志集合Cinvalid中,同时在原日志集合中删除;步骤S34,重新取时间戳T=t1*(2^N),其中N为循环执行次数(每次计算后自动增加1),重复执行步骤S32-S33,如果T大于取出数据C(一天或者几天或全部的数据)的最早日志时间Tmin和最晚日志时间Tmax之差则退出循环,将剩下的日志数据存入临时的有效日志集合Cvalid。进一步的,所述步骤S31中,从通配化处理后临时存入HDFS的数据中取出数据时,取出一天或者几天或者全部数据。进一步的,所述步骤S33中,如果日志数据C起止不完整,第一个日志集合C1和最后一个日志集合CN集合时间小于T,则排除第一个日志集合C1和最后一个日志集合Ck。进一步的,所述步骤S4中进行迭代分组挖掘的方法为:步骤S41,分别从HDFS中取出有效和无效日志集合,按空格对每条日志进行拆分,将其转换为一个一维数组,一维数组的元素就是日志信息中的单词或符号;步骤S42,统计每个一维数组的长度,将相同长度的数组放置在一起形成一个二维数组;步骤S43,对步骤S42中生成的每个二维数组,统计二维数组中每列上的不重复元素的数量,假设第X列上的不重复元素的数量最小(如果有多个列上数量相同且最小,则选择序号最小的列),则认为位置X列为特征分割位置,将该二维数组按照特征分割位置X上的元素进行分割,形成若干新的二维数组,新生成的二维数组的第X列上的元素都相同;设定一个分割系数值,如果新生成的二维数组的行数与其父(分割前)集群二维数组的行数的比值小于分割系数值,则将该新生成的二维数组暂时放置到Ctemp中,后续不做处理;步骤S44,对于步骤S43生成的每个二维数组,统计二维数组中每列上的不重复元素的数量,如有某几列上元素数量一致,且所述元素数量一致的列数最多,则将列数序号最小的两列定义为双射位置,记为位置P1、位置P2,第P1、P2列上的元素就分别组成了一维数组C1、一维数组C2;步骤S45,如果一维数组C1、一维数组C2中元素是一对一的映射关系,则将该二维数组按照特征分割位置P1或位置P2上的元素进行分割,形成若干新的二维数组;如果集合C1、集合C2中存在元素1对M或M对1的映射关系,其中M为大于1的自然数,则计算“M”端集合中的不重复元素数量和该二维数组列数的比值,如果比值大于预设的比例上界,则选择特征分割位置为“1”端集合对应的位置,如果比值小于预设的比例下界,则选择特征分割位置为“M”端集合对应的位置;然后将该二维数组按照特征分割位置上的元素进行分割,形成若干新的二维数组;如果集合C1、集合C2中存在元素N对M的映射关系,其中N、M均为大于1的自然数,则保留该二维数组;将新生成的二维数组中数组的总行数与其父(分割前)二维数组的总行数的比值与分割系数值进行比较,如果小于分割系数值,则将该二维数组暂时放置到Ctemp中,后续不做处理;步骤S45,在同一二维数组中统计二维数组中每列上的不重复元素的数量,如果列上的元素数量不为1,则将该列上的元素改为通配符“*”;如果为1则直接保留,进而将一个二维数组合并成一个一维数组,将该一维数组用空格进行连接,保存到HDFS中。本专利技术还公开了一种基于spark大数据平台的时间窗过滤方法,包括:步骤S31,从通配化处理后临时存入HDFS的数据中取出数据(根据情况取一天或者集几天或本文档来自技高网
...

【技术保护点】
1.基于spark大数据平台的日志信息类型提取方法,其特征在于,包括:/n步骤S1,预处理离线日志数据,过滤掉不能识别的日志条目,过滤后的日志数据存入HDFS中;/n步骤S2,将常规变量替换为通配符,同时对日志条目进行规整处理,完成简单的通配化处理,并将通配化处理后的数据临时存入HDFS中;/n步骤S3,将通配化处理后的数据进行时间根据时间窗进行过滤,将日志数据过滤拆分成有效日志集合和无效日志集合,去重后临时存入HDFS中;/n步骤S4,针对步骤S3得到的有效日志集合和无效日志集合,将日志集合转换成以日志信息为元素的一维数组,根据数组长度结合形成二维数组,并进行特征位置分割,再将二维数组合并成一维数组,形成完整的日志消息类型,最终结果存入HDFS中。/n

【技术特征摘要】
1.基于spark大数据平台的日志信息类型提取方法,其特征在于,包括:
步骤S1,预处理离线日志数据,过滤掉不能识别的日志条目,过滤后的日志数据存入HDFS中;
步骤S2,将常规变量替换为通配符,同时对日志条目进行规整处理,完成简单的通配化处理,并将通配化处理后的数据临时存入HDFS中;
步骤S3,将通配化处理后的数据进行时间根据时间窗进行过滤,将日志数据过滤拆分成有效日志集合和无效日志集合,去重后临时存入HDFS中;
步骤S4,针对步骤S3得到的有效日志集合和无效日志集合,将日志集合转换成以日志信息为元素的一维数组,根据数组长度结合形成二维数组,并进行特征位置分割,再将二维数组合并成一维数组,形成完整的日志消息类型,最终结果存入HDFS中。


2.如权利要求1所述的基于spark大数据平台的日志信息类型提取方法,其特征在于,所述步骤S1中的过滤方式采用以下方法:将日志数据的每条日志的头部信息进行时间的正则匹配,匹配成功则放入HDFS中。


3.如权利要求1所述的基于spark大数据平台的日志信息类型提取方法,其特征在于,所述步骤S3中根据时间窗进行过滤的方法为:
步骤S31,从通配化处理后临时存入HDFS的数据中取出数据,记为C;
步骤S32,设置时间戳T,第一次执行取基础时间戳T=t1,将取出的日志数据C根据日志头部的时间按照T进行分割,形成多个集合时间小于等于T的时间窗日志集合其中Ci表示第i个集合,K为分割的集合数量,集合时间是指日志集合Ci中最晚日志时间与最早日志时间之差;
步骤S33,取日志条数最大的日志集合中的每条日志,如果某条日志在所有的日志集合中,则认为该条日志为无效日志,将该无效日志存入临时的无效日志集合Cinvalid中,同时在原日志集合中删除;
步骤S34,重新取时间戳T=t1*(2^N),其中N为循环执行次数,重复执行步骤S32-S33,如果T大于取出数据C的最早日志时间Tmin和最晚日志时间Tmax之差则退出循环,将剩下的日志数据存入临时的有效日志集合Cvalid。


4.如权利要求3所述的基于spark大数据平台的日志信息类型提取方法,其特征在于,所述步骤S31中,从通配化处理后临时存入HDFS的数据中取出数据时,取出一天或者几天或者全部数据。


5.如权利要求3所述的基于spark大数据平台的日志信息类型提取方法,其特征在于,所述步骤S33中,如果日志数据C起止不完整,第一个日志集合C1和最后一个日志集合CN集合时间小于T,则排除第一个日志集合C1和最后一个日志集合Ck。


6.如权利要求1所述的基于spark大数据平台的日志信息类型提取方法,其特征在于,所述步骤S4中进行迭代分组挖掘的方法为:
步骤S41,分别从HDFS中取出有效和无效日志集合,按空格对每条日志进行拆分,将其转换为一个一维数组,一维数组的元素就是日志信息中的单词或符号;
步骤S42,统计每个一维数组的长度,将相同长度的数组放置在一起形成一个二维数组;
步骤S43,对步骤S42中生成的每个二维数组,统计二维数组中每列上的不重复元素的数量,假设第X列上的不重复元素的数量最小,则认为位置X列为特征分割位置,将该二维数组按照特征分割位置X上的元素进行分割,形成若干新的二维数组,新生成的二维数组的第X列上的元素都相同;
设定一个分割系数值,如果新生成的二维数组的行数与其父的二维数组的行数的比值小于分割系数值,则将该新生成的二维数组暂时放置到Ctemp中,后续不做处理;
步骤S44,对于步骤S43生成的每个二维数组,统计二维数组中每列上的不重复元素的数量,如有某几列上元素数量一致,且所述元素数量一致的列数最多,则将列数序号最小的两列定义为双射位置,记为位置P1、位置P2,第P1、P2列上的元素就分别组成了一维数组C1、一维数组C2;
步骤S45,如果一维数组C1、一维数组C2中元素是一对一的映射关系,则将该二...

【专利技术属性】
技术研发人员:王红伟文占婷刘恕涛薛彬彬岳桂华陈锦王禹成林
申请(专利权)人:中国电子科技集团公司第三十研究所中国信息安全测评中心
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1