CN110890983B - 一种基于大数据的流处理预警的方法 - Google Patents
一种基于大数据的流处理预警的方法 Download PDFInfo
- Publication number
- CN110890983B CN110890983B CN201911174899.8A CN201911174899A CN110890983B CN 110890983 B CN110890983 B CN 110890983B CN 201911174899 A CN201911174899 A CN 201911174899A CN 110890983 B CN110890983 B CN 110890983B
- Authority
- CN
- China
- Prior art keywords
- data
- processed
- early warning
- early
- rule engine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0631—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提出一种基于大数据的流处理预警的方法,构建Storm分布式集群作为数据处理模块,数据处理模块从数据收集端口接收待处理数据,通过Drool构建规则引擎,数据处理模块和规则引擎共同将待处理数据处理为待预警数据,预警模块根据待预警数据发出警报,将规则引擎与Storm分布式集群结合,规则引擎拉取分布式集群中的待处理数据进行数据关联分析得到待预警数据后进行预警,提升了海量数据实时分析处理能力,并且能够及时获取危险预警信息并及时发出预警。
Description
技术领域
本发明涉及网络安全大数据技术领域,具体涉及一种基于大数据的流处理预警的方法。
背景技术
信息技术变革日新月异,大数据、云计算、人工智能、区块链等新技术的发展应用,推进新一代互联网应用平台和新一代信息平台规划建设,建设后的计算、存储、网络、小型终端等暴露在互联网中,信息安全面临着前所未有的挑战。
网络设备、服务器、数据库、应用服务等需要被检测和防御的计算机软硬件,在防护和周期检测过程中,会产生大量的安全日志和检测数据,安全产品需要对日志进行分析、溯源、通过人工智能手段发现潜在的威胁尤为重要。安全产品采集各类系统日志,日志汇总后会变的很庞大,这就要求系统有处理海量数据的能力,从海量数据中发现异常,及时预警潜在的风险,有利于实施运维人员及时发现系统风险,快速定位故障根源,提高对危险事件的事后审查能力。
传统系统的预警方法,是基于多点采集,采集后的数据进行解析和过滤,再向后传输到消息队列,处理进程获取队列消息进行归一化,归一化后数据入库同时传递给规则引擎,规则引擎逐一进行规则判断。这种处理方式的弊端就在于处理端负载不均衡,导致有的非常繁忙,有的很空闲;流程不可存在异常,一个点发生异常,会导致整个流程停滞;规则匹配效率低下;管理和运维成本高。
发明内容
针对现有技术中的缺陷,本发明提供一种基于大数据流处理的方式,能够将待处理数据处理成为待预警数据,再通过预警模块实时预警。
一种基于大数据的流处理预警的方法,包括步骤:
构建Storm分布式集群作为数据处理模块,所述数据处理模块从数据收集端口接收待处理数据,通过Drool构建规则引擎,所述数据处理模块和规则引擎共同将待处理数据处理为待预警数据;预警模块根据待预警数据发出警报。
进一步的,基于开源分布式的Storm分布式集群构建Topology架构作为数据处理模块;
规则引擎从数据处理模块拉取待处理数据进行数据关联分析,处理得到待预警数据,所述预警模块选用Prometheus预警模块,Prometheus预警模块根据预警信息进行预警。
进一步的,所述Topology由多个计算节点组成,每个所述计算节点都与规则引擎接通,并且每个所述计算节点并行运行且互相传递数据,所述规则引擎拉取计算节点接收的所述待处理数据,进行数据关联分析处理为以供 Prometheus预警模块使用的待预警数据;
待预警数据根据业务类型分类,每一类作为一个任务对象,判断任务对象是否满足规则条件;若满足规则条件,则给任务对象增加相似性属性;规则条件为相似性属性和时间范围,在Drools的内存存储里查找任务对象;若所述内存存储里存在符合条件的任务对象,则任务对象里的关联次数累加;所述内存存储里无符合条件的任务对象时,重新创建一个任务对象以供关联;任务对象里的关联次数达到次数门限时,Prometheus预警模块进行预警。
进一步的,所述计算节点由Spout和多个Bolt组成,所述Spout从所述数据收集端口接收所述待处理数据并发送给Bolt;所述Bolt接收Spout发送的待处理数据,所述bolt将待处理数据处理后发送给其他Bolt,所述Bolt与所述规则引擎接通,所述规则引擎拉取Bolt中的待处理数据并进行数据关联分析。
进一步的,多个所述bolt之间通过消息传递分发策略来传递待处理数据。
进一步的,多个所述Bolt包括负责归一化的归一化Bolt进程和负责与规则引擎关联的关联Bolt进程,一个Spout节点接收所述待处理数据,并将待处理数据通过ShuffleGrouping发送给多个归一化Bolt进程,所述归一化Bolt 进程将待处理数据归一化后发送到多个关联Bolt进程;所述关联Bolt进程将待处理数据发送给规则引擎作以供数据关联分析。
进一步的,所述关联Bolt进程在初始化时预先对接规则引擎,关联Bolt 进程收到归一化Bolt进程发送的待处理数据后,将待处理数据批量送入规则引擎以供数据关联分析,待预警数据根据业务类型分类,每一类作为一个任务对象;所述规则引擎收到任务对象后将任务对象缓存在规则引擎内置的内存存储里,关联分析成功后任务对象从内存存储中删除。
进一步的,所述关联分析中,所述内存存储定时删除存储的任务对象。
进一步的,设定所述关联次数的阈值,关联次数达到阈值时,Prometheus 预警模块进行预警,所述预警通过电子数据方式发送给用户。
本发明的有益效果体现在:本发明提出一种基于大数据的流处理预警的方法,构建Storm分布式集群作为数据处理模块,数据处理模块从数据收集端口接收待处理数据,通过Drool构建规则引擎,数据处理模块和规则引擎共同将待处理数据处理为待预警数据,预警模块根据待预警数据发出警报,将规则引擎与Storm分布式集群结合,规则引擎拉取分布式集群中的待处理数据进行数据关联分析得到待预警数据后进行预警,提升了海量数据实时分析处理能力,并且能够及时获取危险预警信息并及时发出预警。
具体实施方式
下面将对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的技术方案,因此只作为示例,而不能以此来限制本发明的保护范围。
需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本发明所属领域技术人员所理解的通常意义。
本发明提出一种基于大数据的流处理预警的方法,主要包括步骤:
构建Storm分布式集群作为数据处理模块,数据处理模块从数据收集端口接收待处理数据,通过Drool构建规则引擎,数据处理模块和规则引擎共同将待处理数据处理为待预警数据,预警模块根据待预警数据发出警报,将规则引擎与Storm分布式集群结合,规则引擎拉取分布式集群中的待处理数据进行数据关联分析得到待预警数据后进行预警,提升了海量数据实时分析处理能力,并且能够及时获取危险预警信息并及时发出预警。
数据收集端口可以是agent客户端,或用户设备的程序端口。例如在微信客户端中,微信客户端能够主动搜集一些数据内容,然后上报微信服务器,微信服务器提供的端口作为前述数据收集端口,端口与storm分布式集群对接,收集的数据作为待处理数据。
具体的,基于开源分布式的Storm分布式集群构建Topology架构作为数据处理模块;规则引擎从数据处理模块拉取待处理数据进行数据关联分析,待处理数据从数据收集端口拉取,规则引擎通过关联分析进行处理得到待预警数据,所述预警模块选用Prometheus预警模块,Prometheus预警模块根据预警信息进行预警。
所述Topology由多个计算节点组成,计算节点可以是呈树状式的,可以是某一个或多个计算节点从数据收集端口拉取待处理数据,每个计算节点都与规则引擎接通,并且每个所述计算节点并行运行且互相传递数据,所述规则引擎拉取计算节点接收的所述待处理数据,进行数据关联分析处理为以供 Prometheus预警模块使用的待预警数据;
待预警数据根据业务类型分类,每一类作为一个任务对象,判断任务对象是否满足规则条件;若满足规则条件,则给任务对象增加相似性属性;规则条件为相似性属性和时间范围,在Drools的内存存储里查找任务对象;若所述内存存储里存在符合条件的任务对象,则任务对象里的关联次数累加;所述内存存储里无符合条件的任务对象时,重新创建一个任务对象以供关联;任务对象里的关联次数达到次数门限时,Prometheus预警模块进行预警。
预警的过程为:
(1)Prometheus Server通过接口的方式拉取待预警数据和存储待预警数据。
(2)Prometheus Server根据定义好的次数门限,把接口传递过来的待预警数据记录时序数据库或者通过push alerts的方式发送给Prometheus Server 的alertmanager模块。
(3)alertmanager基于次数门限触发告警,如果alertmanager收到告警,会通过email、webhook、pagerduty方式发出告警通知。
优选的,在构建Storm分布式集群作为数据处理模块的步骤中,计算节点由Spout和多个Bolt组成,Spout是消息生产者,Spout从数据收集端口接收读取所述待处理数据并分发发送给一个或多个Bolt;所述Bolt接收Spout发送的待处理数据,所述bolt将待处理数据处理后发送给其他Bolt,并且同时 Bolt与规则引擎接通,然后规则引擎拉取Bolt中的待处理数据并进行数据关联分析。多个所述bolt之间通过消息传递分发策略来传递数据。
多个所述Bolt包括负责归一化的归一化Bolt进程和负责与规则引擎关联的关联Bolt进程,一个Spout节点接收所述待处理数据,并将待处理数据通过 ShuffleGrouping发送给多个归一化Bolt进程,所述归一化Bolt进程将待处理数据归一化后发送到多个关联Bolt进程,即所有的待处理数据均衡地发送到各个归一化进程中,从而达到均衡负载的目的;关联Bolt进程将待处理数据发送给规则引擎以供关联分析,关联分析后得到待预警数据。归一化的Bolt进程会将数据发送到多个负责关联规则的关联Bolt进程,这部分数据传递采用 FieldsGrouping,即满足同一个关联规则的数据会发送到同一个关联规则的关联Bolt进程中。
关联Bolt进程在初始化时预先对接规则引擎,可以在同时预先加载规则引擎中的规则文件,关联Bolt进程收到归一化Bolt进程发送的待处理数据后,将待处理数据批量送入规则引擎以供数据关联分析,待预警数据根据业务类型分类,每一类作为一个任务对象;所述规则引擎收到任务对象后将任务对象缓存在规则引擎内置的内存存储里,关联分析成功后任务对象从内存存储中删除。
内存存储中存储特定维度的任务对象,有则累加对象个数,无则生成新的任务对象,新生成的对象是通过查询数据库中的数据生成的,关联分析中内存存储定时删除存储的任务对象。
设定所述关联次数的阈值,关联次数达到阈值时,Prometheus预警模块进行预警,所述预警通过电子数据方式发送给用户,例如email、webhook、 pagerduty等方式。
本发明还有以下突出优点:
1、处理流程根据业务类型拆分为多个进程,多进程通过可靠的消息传递实时交互数据,Storm的容错机制保证不会由于某个节点失效而影响系统运行;
2、使用Storm的分发处理方式,使多个处理进程能够均衡地接收数据,从而达到均衡负载的目的;
3、规则引擎的关联分析过程中考虑到了内存和数据库共存的方式,内存匹配为主,数据库匹配为辅,提高数据处理的能力;
4、Prometheus预警模块可灵活定义预警条件以及次数门限,满足复杂情况下的告警需求。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。
Claims (7)
1.一种基于大数据的流处理预警的方法,其特征在于:包括步骤:
构建Storm分布式集群作为数据处理模块,所述数据处理模块从数据收集端口接收待处理数据,通过Drool构建规则引擎,所述数据处理模块和规则引擎共同将待处理数据处理为待预警数据;预警模块根据待预警数据发出警报;
基于开源分布式的Storm分布式集群构建Topology架构作为数据处理模块;
规则引擎从数据处理模块拉取待处理数据进行数据关联分析,处理得到待预警数据,所述预警模块选用Prometheus预警模块,Prometheus预警模块根据预警信息进行预警;
所述Topology由多个计算节点组成,每个所述计算节点都与规则引擎接通,并且每个所述计算节点并行运行且互相传递数据,所述规则引擎拉取计算节点接收的所述待处理数据,进行数据关联分析处理为以供Prometheus预警模块使用的待预警数据;
待预警数据根据业务类型分类,每一类作为一个任务对象,判断任务对象是否满足规则条件;若满足规则条件,则给任务对象增加相似性属性;规则条件为相似性属性和时间范围,在Drools的内存存储里查找任务对象;若所述内存存储里存在符合条件的任务对象,则任务对象里的关联次数累加;所述内存存储里无符合条件的任务对象时,重新创建一个任务对象以供关联;任务对象里的关联次数达到次数门限时,Prometheus预警模块进行预警。
2.据权利要求1所述的一种基于大数据的流处理预警的方法,其特征在于:所述计算节点由Spout和多个Bolt组成,所述Spout从所述数据收集端口接收所述待处理数据并发送给Bolt;所述Bolt接收Spout发送的待处理数据,所述Bolt将待处理数据处理后发送给其他Bolt,所述Bolt与所述规则引擎接通,所述规则引擎拉取Bolt中的待处理数据并进行数据关联分析。
3.据权利要求2所述的一种基于大数据的流处理预警的方法,其特征在于:多个所述Bolt之间通过消息传递分发策略来传递待处理数据。
4.据权利要求3所述的一种基于大数据的流处理预警的方法,其特征在于:
多个所述Bolt包括负责归一化的归一化Bolt进程和负责与规则引擎关联的关联Bolt进程,一个Spout节点接收所述待处理数据,并将待处理数据通过ShuffleGrouping发送给多个归一化Bolt进程,所述归一化Bolt进程将待处理数据归一化后发送到多个关联Bolt进程;所述关联Bolt进程将待处理数据发送给规则引擎作以供数据关联分析。
5.据权利要求4所述的一种基于大数据的流处理预警的方法,其特征在于:
所述关联Bolt进程在初始化时预先对接规则引擎,关联Bolt进程收到归一化Bolt进程发送的待处理数据后,将待处理数据批量送入规则引擎以供数据关联分析,待预警数据根据业务类型分类,每一类作为一个任务对象;所述规则引擎收到任务对象后将任务对象缓存在规则引擎内置的内存存储里,关联分析成功后任务对象从内存存储中删除。
6.据权利要求5所述的一种基于大数据的流处理预警的方法,其特征在于:
所述关联分析中,所述内存存储定时删除存储的任务对象。
7.据权利要求6所述的一种基于大数据的流处理预警的方法,其特征在于:
设定所述关联次数的阈值,关联次数达到阈值时,Prometheus预警模块进行预警,所述预警通过电子数据方式发送给用户。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911174899.8A CN110890983B (zh) | 2019-11-26 | 2019-11-26 | 一种基于大数据的流处理预警的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911174899.8A CN110890983B (zh) | 2019-11-26 | 2019-11-26 | 一种基于大数据的流处理预警的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110890983A CN110890983A (zh) | 2020-03-17 |
CN110890983B true CN110890983B (zh) | 2022-04-05 |
Family
ID=69748823
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911174899.8A Active CN110890983B (zh) | 2019-11-26 | 2019-11-26 | 一种基于大数据的流处理预警的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110890983B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB201602098D0 (en) * | 2015-03-04 | 2016-03-23 | Fisher Rosemount Systems Inc | Anomaly detection in industrial communications |
CN106777029A (zh) * | 2016-12-08 | 2017-05-31 | 中国科学技术大学 | 一种分布式规则引擎系统及其构建方法 |
CN108989106A (zh) * | 2018-07-17 | 2018-12-11 | 郑州云海信息技术有限公司 | 一种分布式集群的数据处理方法、装置及系统 |
CN110019651A (zh) * | 2019-03-01 | 2019-07-16 | 广州亚美信息科技有限公司 | 一种流式规则引擎及业务数据处理方法 |
CN110275899A (zh) * | 2019-04-18 | 2019-09-24 | 智链万源(北京)数字科技有限公司 | 物联网数据流处理方法、系统及装置 |
-
2019
- 2019-11-26 CN CN201911174899.8A patent/CN110890983B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB201602098D0 (en) * | 2015-03-04 | 2016-03-23 | Fisher Rosemount Systems Inc | Anomaly detection in industrial communications |
CN106777029A (zh) * | 2016-12-08 | 2017-05-31 | 中国科学技术大学 | 一种分布式规则引擎系统及其构建方法 |
CN108989106A (zh) * | 2018-07-17 | 2018-12-11 | 郑州云海信息技术有限公司 | 一种分布式集群的数据处理方法、装置及系统 |
CN110019651A (zh) * | 2019-03-01 | 2019-07-16 | 广州亚美信息科技有限公司 | 一种流式规则引擎及业务数据处理方法 |
CN110275899A (zh) * | 2019-04-18 | 2019-09-24 | 智链万源(北京)数字科技有限公司 | 物联网数据流处理方法、系统及装置 |
Non-Patent Citations (1)
Title |
---|
一种基于流数据处理的预警系统设计;王性国等;《电脑知识与技术》;20191025;第15卷(第30期);第2页-第5页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110890983A (zh) | 2020-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10225165B2 (en) | Apparatus and method for processing data streams in a communication network | |
CN115809183A (zh) | 基于知识图谱的信创终端故障发现及处置的方法 | |
CN114757590A (zh) | 基于大数据分析的企业运营风险预警及管控系统 | |
CN105847029A (zh) | 一种基于大数据分析的信息安全事件自动关联及快速响应的方法及系统 | |
CN114548706A (zh) | 一种业务风险的预警方法以及相关设备 | |
CN113268399B (zh) | 一种告警处理方法、装置和电子设备 | |
WO2017080161A1 (zh) | 云计算中报警信息的处理方法及装置 | |
CN115733762A (zh) | 具有大数据分析能力的监控系统 | |
CN101610169A (zh) | 互联网多媒体内容监控方法及其装置 | |
CN115529595A (zh) | 一种日志数据的异常检测方法、装置、设备及介质 | |
CN116257021A (zh) | 一种工控系统智能网络安全态势监测预警平台 | |
CN109634808B (zh) | 一种基于关联分析的链式监控事件根因分析方法 | |
CN116436821A (zh) | 一种基于人工智能计算平台的运维管理软件系统 | |
CN110149303A (zh) | 一种党校的网络安全预警方法及预警系统 | |
CN111339050B (zh) | 一种基于大数据平台集中安全审计的方法及系统 | |
CN110890983B (zh) | 一种基于大数据的流处理预警的方法 | |
CN112486776B (zh) | 一种集群成员节点可用性监测设备及方法 | |
CN117891678A (zh) | 面向异构平台虚拟化环境的安全监控数据处理方法及系统 | |
CN111427749B (zh) | 一种openstack环境下针对ironic服务的监控工具及方法 | |
CN117914511A (zh) | 一种基于数据交换、日志分析的安全审计系统 | |
Liu et al. | Big Data architecture for IT incident management | |
CN107769993A (zh) | 面向电网大数据分布式系统的数据流量监控方法 | |
CN116232695A (zh) | 一种网络安全运维关联分析系统 | |
CN114500229B (zh) | 基于时空信息的网络告警定位及分析方法 | |
CN116112340A (zh) | 一种基于边缘计算的直播拉流监测方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |