海量日志存储和查询方法及系统

阅读: 评论:0

海量⽇志存储和查询⽅法及系统
摘要
本发明提供⼀种海量⽇志存储和查询⽅法及系统,其中的⽅法包括将分⽚后的⽇志按照主从关系存储为⽂件结构,其中,分⽚后的⽇志按照主从关系存储在主⽂件和从⽂件内,主⽂件包括⽇志的聚合数量、分⽚开始时间和分⽚结束时间,且主⽂件采⽤XML数据结构,包括event元素、count元素、Level元素和Keyword元素,从⽂件包括⽇志的发⽣时间和发⽣⽇志的设备的IP;在主⽂件和从⽂件内对⽇志进⾏查询。利⽤上述发明能够在海量的⽇志中,查询满⾜时间范围和⼀定条件的所有⽇志,并采⽤⽂件结构进⾏存储,存储体积更⼩,⽅便压缩,⽅便更长时间的保存⽇志。
说明
煤气化技术海量⽇志存储和查询⽅法及系统
技术领域
[0001] 本发明涉及通讯⽇志处理技术领域,更为具体地,涉及⼀种海量⽇志存储和查询⽅法及系统。
3ku
背景技术
[0002] 随着云计算、移动互联⽹、物联⽹的崛起与发展,⼤数据的时代已经来临。各种系统、程序、运维、交易等的⽇志作为系统恢复、错误跟踪、安全检测等操作的重要依据,变得越来越重要。因此,在海量⽇志中快速的寻到有⽤的信息,也变得⼗分重要。
[0003] 例如,⼊侵监测、漏洞扫描、审计等系统作为安全监测系统,能够完成对安全构成威胁的任何⼀个⾏为进⾏报警,即⽣成操作⽇志。当某⼀个操作持续进⾏时,就会发出相同的操作⽇志,假设⼀个⿊客使⽤暴⼒破解软件进⾏⼀个主机的密码操作时,这台主机就会不停的报出密码错误的操作⽇志。如果管理员每天的看这些⽇志,就难免会将⼀些有⽤的信息掩没在这海量的⽇志中,从⽽⽆法从海量⽇志中定位⽬标⽇志。
[0004] 针对上述问题,⽬前的⽇志审计系统或相关产品,可以实现⽇志采集、审计分析、集中存储和信息展⽰等功能。这类产品的⼀个主要的特点是对相同的⽇志进⾏聚合,相同的⽇志指的是同⼀种类的⽇志,⽐如上⾯提到的密码错误就属于同⼀种类的⽇志,密码成功就是另外⼀种⽇志。对⽇志进⾏聚合的⽬的是⽅便展⽰,其存储⽅式还是按照⽇志事件的主从关系存储到表或数据结构中。主关系存储事件的特征信息和聚合的数量,⽐如,密码错误50次。从关系存储具体信息,⽐如,发⽣密码错误的具体时间、来源的IP地址等等。
[0005] 管理员除了关注聚合数量外,还需要关注⽇志在不同时间段的发⽣频率和某⼀时间段具体⽇志
的内容,这样就引⼊了海量⽇志聚合后的查询问题。对应以上的问题,⼀般的实现是查询从关系并关联主关系的⽅式,具体实现如下:
[0006] -般情况下,将主从关系对应到数据库中的主从表中,并将从表按照时间进⾏分区。查询条件为时间或者是时间和设备类型相结合,返回结果为时间轴(TimeLine)和列表相结合的⽅式。这种⽅式查询性能低,即使是使⽤分区存储效果也不好,随着⽇志数量的增多,性能下降的更加明显,此外,需轮询消息列队,效率较低。内网审计
[0007] 综上所述,使⽤传统的主从表做联合查询、分组和排序存在以下缺点:
[0008] 1、查询性能⾮常的低,即使是使⽤分区存储效果也不好。并且随着⽇志数量的增多,性能下降的⾮常明显。当到达⼀定数量时,界⾯⼏乎⽆响应。
[0009] 2、查询到之后,必须等排序完成后才能返回结果。
发明内容
[0010] 鉴于上述问题,本发明的⽬的是提供⼀种海量⽇志存储和查询⽅法及系统,以解决现有对⽇志处理中以主从表做查询、分组和排序存在的查询效率低等问题。
[0011] 根据本发明的⼀个⽅⾯,提供了⼀种海量⽇志存储和查询⽅法,包括将聚合后的⽇志按时间进⾏分⽚,其中,分⽚的时间根据⽇志的聚合时间确定;将分⽚后的⽇志按照主从关系存储为⽂件结构,其中,分⽚后的⽇志按照主从关系存储在主⽂件和从⽂件内,主⽂件包括⽇志的聚合数量、分⽚开始时间和分⽚结束时间,且主⽂件采⽤XML数据结构,包括 event元素、count元素、Level元素和Keyword元素,从⽂件包括⽇志的发⽣时间和发⽣⽇志的设备的IP ;在主⽂件和从⽂件内对⽇志进⾏查询。
[0012] 其中,在对⽇志进⾏查询的过程中,查询条件为时间或者为时间与⽇志的等级、名称、关键字或设备类型中⾄少⼀个的结合。
[0013] 其中,在对⽇志进⾏查询的过程中,包括两种情况:第⼀种情况,对现在⾄过去⼀个时间段的⽇志进⾏查询,当分⽚的开始时间晚于查询的开始时间时,将该时间段内的所有分⽚中的相同⽇志做合并,作为第⼀批数据进⾏显⽰;当分⽚的开始时间早于查询的开始时间、并且分⽚的结束时间晚于查询的开始时间时,对从⽂件中的⽇志进⾏计算,并作为第⼆批数据进⾏显⽰;第⼆种情况,对过去某⼀个时间段内的⽇志进⾏查询,当分⽚的开始时间晚于查询的开始时间、并且分⽚的结束时间早于查询的结束时间时,将该时间段内的所有分⽚中相同的事件做合并,作为第⼀批数据进⾏显⽰;当分⽚的开始时间早于查询的开始时间、并且分⽚的结束时间晚于查询的开始时间,或者分⽚的结束时间晚于查询的结束时间、并且查询的结束时间晚于分⽚的开始时间时,将从⽂件中的⽇志进⾏计算,并
作为第⼆批数据进⾏显⽰。
[0014] 根据本发明的另⼀⽅⾯,提供了⼀种海量⽇志存储和查询系统,包括分⽚模块,⽤于将聚合后的⽇志按时间进⾏分⽚,其中,分⽚的时间根据⽇志的聚合时间确定;存储模块,⽤于将分⽚后的⽇志按照主从关系存储为⽂件结构,其中,分⽚后的⽇志按照主从关系存储在主⽂件和从⽂件内,主⽂件包括⽇志的聚合数量、分⽚开始时间和分⽚结束时间,且主⽂件采⽤XML数据结构,包括event元素、count元素、Level元素和Keyword元素,从⽂件包括⽇志的发⽣时间和发⽣⽇志的设备的IP。
游艇门[0015] 其中,在查询模块中,查询条件为时间或者为时间与⽇志的等级、名称、关键字或设备类型中⾄少⼀个的结合。
[0016] 其中,对⽇志进⾏查询的过程包括两种情况:第⼀种情况,对现在⾄过去⼀个时间段的⽇志进⾏查询,当分⽚的开始时间晚于查询的开始时间时,将该时间段内的所有分⽚中的相同⽇志做合并,作为第⼀批数据进⾏显⽰;当分⽚的开始时间早于查询的开始时间、并且分⽚的结束时间晚于查询的开始时间时,对从⽂件中的⽇志进⾏计算,并作为第⼆批数据进⾏显⽰;第⼆种情况,对过去某⼀个时间段内的⽇志进⾏查询,当分⽚的开始时间晚于查询的开始时间、并且分⽚的结束时间早于查询的结束时间时,将该时间段内的所有分⽚中相同的事件做合并,作为第⼀批数据进⾏显⽰;当分⽚的开始时间早于查询的开始时间、并且分⽚的结束时间晚于查询的开始时间,或者分⽚的结束时间晚于查
询的结束时间、并且查询的结束时间晚于分⽚的开始时间时,将从⽂件中的⽇志进⾏计算,并作为第⼆批数据进⾏显⽰。
[0017] 利⽤上述根据本发明的海量⽇志存储和查询⽅法及系统,具有以下优点:
[0018] (1)在海量⽇志中,快速查询到满⾜时间范围和⼀定条件的所有⽇志;
[0019] ⑵特有的主从⽂件式结构,可以快速的统计聚合⽇志的数量并快速的查询详细事件;
[0020] (3)可以快速的形成以时间为横坐标、以数量为纵坐标的时间轴;
[0021] (4)特有的主从⽂件式结构,存储体积⼩、易于压缩,⽅便保存更长时间的⽇志;
[0022] (5)对查询事件分批返回,界⾯响应及时,⽤户体验好。
[0023] 为了实现上述以及相关⽬的,本发明的⼀个或多个⽅⾯包括后⾯将详细说明并在权利要求中特别指出的特征。下⾯的说明以及附图详细说明了本发明的某些⽰例性⽅⾯。然⽽,这些⽅⾯指⽰的仅仅是可使⽤本发明的原理的各种⽅式中的⼀些⽅式。此外,本发明旨在包括所有这些⽅⾯以及它们的等同物。
附图说明
[0024] 通过参考以下结合附图的说明及权利要求书的内容,并且随着对本发明的更全⾯理解,本发明的其它⽬的及结果将更加明⽩及易于理解。在附图中:
[0025] 图1为根据本发明实施例的海量⽇志存储和查询⽅法的流程图;
[0026] 图2为根据本发明实施例的海量⽇志存储和查询⽅法的主从⽂件结构⽰意图;
[0027] 图3为根据本发明实施例的海量⽇志存储和查询⽅法的第⼀种查询情况分⽚结构⽰意图;
[0028] 图4为根据本发明实施例的海量⽇志存储和查询⽅法的第⼆种查询情况分⽚结构⽰意图;
防盗报警装置[0029] 图5为根据本发明实施例的海量⽇志存储和查询系统⽅框⽰意图。
[0030] 在所有附图中相同的标号指⽰相似或相应的特征或功能。
卷纸筒
具体实施⽅式
[0031] 在下⾯的描述中,出于说明的⽬的,为了提供对⼀个或多个实施例的全⾯理解,阐述了许多具体细节。然⽽,很明显,也可以在没有这些具体细节的情况下实现这些实施例。
[0032] 根据⽬前使⽤的主从表做联合查询、分组和排序,存在查询性能⾮常低的问题,即使是使⽤分区存储,查询效果也不好,并且查询到之后,必须等排序完成后才能返回结果。针对上述现有技术中
存在的问题,本发明通过将聚合后的⽇志进⾏分⽚,对分⽚后的数据分段存储,并根据查询条件将分段后的数据快速拼装,提⾼⽇志查询效率,并能快速返回查询结果。
[0033] 以下将结合附图对本发明的具体实施例进⾏详细描述。
[0034] 图1⽰出了根据本发明实施例的海量⽇志存储和查询⽅法流程。
[0035] 如图1所⽰,根据本发明的海量⽇志存储和查询⽅法流程包括:
[0036] S110 :将聚合后的⽇志按时间进⾏分⽚,其中,分⽚的时间根据⽇志的聚合时间确定。
[0037] 具体地,将聚合后的⽇志事件做分⽚的预先处理,将长时间的⽇志聚合改为中、短时间的分⽚。例如,将永久聚合的同⼀⽇志事件,改为按照⼀天或者⼀⼩时的聚合。在本发明中对聚合后的所有⽇志按照整点、整分的时间进⾏分⽚,分⽚的时间根据⽇志聚合时间的⼤⼩进⾏确定,也就是说⽇志聚合时间⼤⼩不同,分⽚时间的⼤⼩也不同,同时,对分⽚后的⽇志以特殊结构进⾏存储,以⽅便⽤户对⽇志进⾏查询和保存。
[0038] S120 :将分⽚后的⽇志按照主从关系存储为⽂件结构,其中,分⽚后的⽇志按照主从关系存储在主⽂件和从⽂件内,主⽂件包括⽇志的聚合数量、分⽚开始时间和分⽚结束时间,且主⽂件采⽤XML数据结构,包括event元素、count元素、Level元素和Keyword元素,从⽂件包括⽇志的发⽣时间
和发⽣⽇志的设备的IP。
[0039] 具体地,将聚合⽇志进⾏分⽚后,按照主从⽂件的结构进⾏存储。其中,当分⽚后的⽇志按照主从关系存储在主⽂件和从⽂件内时,主⽂件主要包括⽇志的聚合数量、分⽚开始时间和分⽚结束时间,从⽂件主要包括⽇志的发⽣时间和发⽣⽇志的设备的IP。此外,⽂件名为对聚合⽇志进⾏分⽚的开始时间,分⽚的结束时间可以由分⽚的开始时间和分⽚⼤⼩计算得出。
[0040] 其中,对于上述描述也可以理解为,在本发明的海量⽇志存储和查询⽅法中,设置两个存储单元,⼀个主存储单元和⼀个从存储单元,可知存储单元为⽂件结构。其中,主存储单元的主要字段有⽇志事件的聚合数量、分⽚的开始时间和结束时间;从存储单元存储详细的每⼀个⽇志事件。主存储单元对应数据库中的主⽂件,从存储单元对应数据库中的从⽂件。
[0041] 作为⽰例,图2⽰出了根据本发明实施例的海量⽇志存储和查询⽅法的主从⽂件结构。
[0042] 如图2所⽰,主⽂件存储⽇志的聚合时间,从⽂件存储⽇志的详细事件。此外,⽂件名为分⽚的开始时间,分⽚的结束时间可以由开始时间和分⽚⼤⼩计算得出。在该实施例中,主⽂件名为20140801000000,表⽰存储2014年8⽉1⽇零点以后的分⽚数据,由于分⽚时间设定为⼀天,所以该分⽚的结束时间为20140801232359,即该分⽚的结束时间为 2014年8⽉1⽇23点23分59秒。从⽂件名为20140801000000_d,该从⽂件与下划线之前同名的主⽂件相对应。
[0043] 需要说明的是,在本发明的海量⽇志存储和查询⽅法中,按照主从⽂件的结构对分⽚后的⽇志进⾏存储时,主⽂件采⽤XML的数据结构,表⽰对相应的从⽂件中⽇志时间的结构描述,主要包括event元素、count元素、Level元素和Keyword元素。具体地,上述⽰例的主⽂件中存储的内容如下所述:
[0044] 〈context〉 <Event> <;密码成功>1,2,3,4,5,</密码成功> <;密码失败>51 </密码失败> 〈./Event〉〈Level〉 <0>1, </0> <1 >2,3,7. </1> <2>5, </2> <3>9,</3> <4>13, </4> 〈/Level〉 <Keyword> <pass>l,2,3, </pass>
[0045] <fail>51 </fail> 〈/Keyword〉〈/context〉
[0046] 其中,主⽂件中的Event元素为必须项,表⽰该时间段内⽇志事件的信息,属性 count表⽰该种⽇志事件的数量,上述内容中⽤逗号分隔的数字表⽰从⽂件中对应的⾏号。在数据存储时,先追加从⽂件的内容,由于是增量操作,只能在原有的⽂件后⾯进⾏追加,所以⾏号是不会改变的。然后,修改Event元素,Event元素需要先读⼊到内存中,修改后再写回到主⽂件中。由于写⼊主⽂件和从⽂件的时候都是定时或者批量完成的,不会出现频繁的磁盘输⼊/输出情况。
[0047] 此外,主⽂件的其它元素,如Level、Keyword等,⽤做扩展使⽤。在以时间为查询条件的前提下,⽤做数据查询,通过对查询条件做预先的处理,可以⼤⼤提⾼⽇志的查询速度。内容中⽤逗号分
隔的数字表⽰从⽂件中对应的⾏号,查询的时候只需要到相应的元素,将元素中的⾏号做交集计算,即可以得到查询后的⽇志事件数量和相对应的⽇志事件。
[0048] 对应上述主⽂件内容,从⽂件中存储的内容如下所述:
[0049] ⾏号1 时间 Message 1 ⾏号2 时间 Message】⾏号3 时间 Message3 ⾏号4 时间 Message4 ⾏号5 时间 Message5 ⾏号N 时间MessageN
[0050] 其中,通过设定的查询条件,在主⽂件的各元素中进⾏筛选,并对各元素内的⾏号取交集运算,最终得到⼀个⾏号值,并对该值在从⽂件内进⾏对应,进⽽得到具体的查询⽇ ;志肩、。

本文发布于:2023-06-10 11:06:18,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/2/133364.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:查询   时间   元素   系统   开始   聚合
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图