CN110928717A - 一种复杂时序事件检测方法及装置 - Google Patents

一种复杂时序事件检测方法及装置 Download PDF

Info

Publication number
CN110928717A
CN110928717A CN201911112826.6A CN201911112826A CN110928717A CN 110928717 A CN110928717 A CN 110928717A CN 201911112826 A CN201911112826 A CN 201911112826A CN 110928717 A CN110928717 A CN 110928717A
Authority
CN
China
Prior art keywords
time
data
state machine
detected
machine template
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.)
Granted
Application number
CN201911112826.6A
Other languages
English (en)
Other versions
CN110928717B (zh
Inventor
皮靖
袁帅
梁莎
李景
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NSFOCUS Information Technology Co Ltd
Nsfocus Technologies Inc
Original Assignee
NSFOCUS Information Technology Co Ltd
Nsfocus Technologies Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NSFOCUS Information Technology Co Ltd, Nsfocus Technologies Inc filed Critical NSFOCUS Information Technology Co Ltd
Priority to CN201911112826.6A priority Critical patent/CN110928717B/zh
Publication of CN110928717A publication Critical patent/CN110928717A/zh
Application granted granted Critical
Publication of CN110928717B publication Critical patent/CN110928717B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种复杂时序事件检测方法及装置,用以解决现有的事件检测的准确性低的问题。所述复杂时序事件检测方法,包括:对接收的每一条待检测数据标注系统时间戳,其中,所述待检测数据携带有记录时间戳;确定当前时间周期的水位线;将所述当前时间周期内的记录时间大于所述水位线的待检测数据缓存至优先队列中,并按照记录时间的先后顺序对所述优先队列中的待检测数据进行重排序;每当所述水位线更新时,将所述优先队列中记录时间小于所述更新后的水位线的待检测数据从所述优先队列中移出;根据预设的规则森林以及从所述优先队列中移出的每一条待检测数据的系统时间和记录时间对从所述优先队列中移出的每一条待检测数据进行检测。

Description

一种复杂时序事件检测方法及装置
技术领域
本发明涉及信息安全技术领域,尤其涉及一种复杂时序事件检测方法及装置。
背景技术
复杂事件检测是通过关联、聚合、时序等方式发现海量数据集中用户定义的有意义的事件的方法。在信息安全技术领域中,复杂时序事件(即有时序关系的复杂事件)的检测尤为重要。例如“Redis未授权漏洞利用成功并SSH(Secure Shell,安全外壳协议)登录”事件,只有当发生了“Redis未授权漏洞利用”告警之后,再出现SSH端口的较长时长的会话连接或者“SSH登录尝试”告警,才可以证明攻击者利用了相应漏洞并且成功登录,如果会话连接或者“SSH登录尝试”告警出现在“Redis未授权漏洞利用”告警之前,或者多种类型的日志交替出现,则有可能是存在误报或者属于扫描事件的几率比较大。
复杂时序事件检测的一种通用的方式为在数据命中前置条件时写入缓存,后续出现的数据与缓存的前置条件进行比对,判断是否满足时序关系。然而,数据在经过各分布式组件如Kafka(分布式消息队列)时,由于存在多个分区且仅能保证各个分区内部有序,则整体数据是存在局部乱序的,如何在数据局部乱序的情况下识别出时序事件为一个难点。另外,由于接入的数据源复杂多样,实时数据和延迟数据混杂在一起,如何合理处理前置条件的超时问题为另一个难点。无论是存在数据局部乱序,还是不能合理处理前置条件的超时问题,均会影响事件检测的准确性。
发明内容
为了解决现有的事件检测的准确性低的问题,本发明实施例提供了一种复杂时序事件检测方法及装置。
第一方面,本发明实施例提供了一种复杂时序事件检测方法,包括:
对接收的每一条待检测数据标注系统时间戳,其中,所述待检测数据携带有记录时间戳,所述系统时间用于表征接收所述待检测数据时的时间,所述记录时间用于表征所述待检测数据生成的时间;
确定当前时间周期的水位线,所述水位线用于表征时间标准;
将所述当前时间周期内的记录时间大于所述水位线的待检测数据缓存至优先队列中,并按照记录时间的先后顺序对所述优先队列中的待检测数据进行重排序;
每当所述水位线更新时,将所述优先队列中记录时间小于所述更新后的水位线的待检测数据从所述优先队列中移出;
根据预设的规则森林以及从所述优先队列中移出的每一条待检测数据的系统时间和记录时间对从所述优先队列中移出的每一条待检测数据进行检测,其中,所述规则森林为根据预设的各时序规则的子项和时序关系生成的,所述规则森林的每颗规则树从根节点到叶子节点的分支路径对应一个时序规则。
本发明实施例提供的复杂时序事件检测方法,大数据平台针对接收的每一条待检测数据标注系统时间戳,所述系统时间即接收所述检测数据时的时间,所述待检测数据携带有记录时间戳,所述记录时间即所述待检测数据生成的时间,确定当前时间周期的水位线,所述水位线用于表征时间标准,进而,将当前周期内的记录时间大于所述水位线的待检测数据缓存至优先队列中,并按照记录时间的先后顺序对所述优先序列中的待检测数据进行重排序,水位线周期性进行更新,每当所述水位线更新时,将所述优先队列中记录时间小于所述更新后的水位线的待检测数据从所述优先队列中移出,根据预设的规则森林以及从所述优先队列中移出的每一条待检测数据的系统时间和记录时间对从所述优先队列中移出的每一条待检测数据进行检测,其中,所述规则森林为根据预设的各时序规则的子项和时序关系生成的,所述规则森林的每颗规则树从根节点到叶子节点的一条分支路径对应一个时序规则。根据本发明实施例提供的复杂时序事件检测方法,提出水位线和优先队列的方式,对待检测数据进行一定时长的缓存和重排序,解决了数据局部乱序的问题,并且,为每一条待检测数据均标注上记录时间戳和系统时间戳,将时序规则生成规则森林,根据规则森林以及待检测数据的记录时间和系统时间对待检测数据进行检测,解决了前置条件的超时问题,大大提高了复杂时序事件检测的准确性。
较佳地,所述每颗规则树的根节点为对应的时序规则的初始条件,所述每颗规则树的根节点和叶子节点组成的分支路径对应一个状态机模板;以及
根据预设的规则森林以及从所述优先队列中移出的每一条待检测数据的系统时间和记录时间对从所述优先队列中移出的每一条待检测数据进行检测,具体包括:
当确定所述待检测数据命中某一规则树的根节点时,触发所述规则树分支路径对应的状态机模板实例化,所述状态机模板实例中至少包含所述规则树分支路径中各个节点所组成的多步状态条件、当前状态、状态更新系统时间、状态更新记录时间和命中记录信息,其中,所述状态更新系统时间为命中所述状态机模板实例状态条件的待检测数据的系统时间,所述状态更新记录时间为命中所述状态机模板实例状态条件的待检测数据的记录时间;
当后续待检测数据命中所述状态机模板实例中的后续状态条件时,根据命中所述状态机模板实例中的所述状态条件的待检测数据的系统时间、所述状态机模板实例的上一状态更新系统时间与所述规则树分支路径对应的时序规则预设的时间间隔,判断所述状态机模板实例是否超时;
如果是,则将所述状态机模板实例从缓存的未完成状态机队列中移除;
如果否,则根据所述命中所述状态机模版实例的所述状态条件的待检测数据的记录时间、所述状态机模板实例的上一状态更新记录时间与所述规则树分支路径对应的时序规则预设的时间间隔,确定是否触发所述状态机模板实例更新;
当确定所述状态机模板实例更新到所述状态机模板实例的多步状态条件的最后一步条件时,输出命中记录,并将所述状态机模板实例从所述未完成状态机队列中移除,其中,所述命中记录为命中规则的复杂时序事件。
上述较佳的实施方式表征,将时序规则生成规则森林后,每颗规则树的根节点和叶子节点组成的分支路径对应一个状态机模板,即将规则的各个子项拆解为状态机的各个阶段,规则的逐步命中过程即对应状态机各个阶段的变化过程,使用待检测数据的系统时间来判断规则的前置条件即初始条件是否超时,使用待检测数据的记录时间来判断时序条件是否命中,从而妥善的处理了实时数据和延迟数据的混杂问题。
较佳地,初始时间周期的水位线设置为零,则确定当前时间周期的水位线,具体包括:
确定上一时间周期内的待检测数据的最大记录时间;
将所述最大记录时间与预设的容忍乱序时间的差值确定为当前时间周期的水位线。
较佳地,根据所述命中所述状态机模板实例中的所述状态条件的待检测数据的系统时间、所述状态机模板实例的上一状态更新系统时间与所述规则树对应分支路径对应的时序规则预设的时间间隔,判断所述状态机模板实例是否超时,具体包括:
计算所述命中所述状态机模板实例中的所述状态条件的待检测数据的系统时间和所述状态机模板实例的上一状态更新系统时间的差值;
判断所述差值是否大于所述规则树分支路径对应的时序规则预设的时间间隔;
如果是,则所述状态机模板实例超时;
否则,所述状态机模板实例不超时。
较佳地,根据所述命中状态机模版实例的所述状态条件的待检测数据的记录时间、所述状态机模板实例的上一状态更新记录时间与所述规则树分支路径对应的时序规则预设的时间间隔,确定是否触发所述状态机模板实例更新,具体包括:
当确定所述命中状态机模版实例的所述状态条件的待检测数据的记录时间和所述状态机模板实例的上一状态更新记录时间之间的差值小于等于所述规则树分支路径对应的时序规则预设的时间间隔时,则确定触发所述状态机模板实例更新。
第二方面,本发明实施例提供了一种复杂时序事件检测装置,包括:
标注单元,用于对接收的每一条待检测数据标注系统时间戳,其中,所述待检测数据携带有记录时间戳,所述系统时间用于表征接收所述待检测数据时的时间,所述记录时间用于表征所述待检测数据生成的时间;
确定单元,用于确定当前时间周期的水位线,所述水位线用于表征时间标准;
缓存单元,用于将所述当前时间周期内的记录时间大于所述水位线的待检测数据缓存至优先队列中,并按照记录时间的先后顺序对所述优先队列中的待检测数据进行重排序;
优先队列处理单元,用于每当所述水位线更新时,将所述优先队列中记录时间小于所述更新后的水位线的待检测数据从所述优先队列中移出;
检测单元,用于根据预设的规则森林以及从所述优先队列中移出的每一条待检测数据的系统时间和记录时间对从所述优先队列中移出的每一条待检测数据进行检测,其中,所述规则森林为根据预设的各时序规则的子项和时序关系生成的,所述规则森林的每颗规则树从根节点到叶子节点的分支路径对应一个时序规则。
较佳地,所述每颗规则树的根节点为对应的时序规则的初始条件,所述每颗规则树的根节点和叶子节点组成的路径对应一个状态机模板;以及
所述检测单元,具体用于当确定所述待检测数据命中某一规则树的根节点时,触发所述规则树分支路径对应的状态机模板实例化,所述状态机模板实例中至少包含所述规则树分支路径中各个节点所组成的多步状态条件、当前状态、状态更新系统时间、状态更新记录时间和命中记录信息,其中,所述状态更新系统时间为命中所述状态机模板实例状态条件的待检测数据的系统时间,所述状态更新记录时间为命中所述状态机模板实例状态条件的待检测数据的记录时间;当后续待检测数据命中所述状态机模板实例中的后续状态条件时,根据命中所述状态机模板实例中的所述状态条件的待检测数据的系统时间、所述状态机模板实例的上一状态更新系统时间与所述规则树分支路径对应的时序规则预设的时间间隔,判断所述状态机模板实例是否超时;如果是,则将所述状态机模板实例从缓存的未完成状态机队列中移除;如果否,则根据所述命中所述状态机模版实例的所述状态条件的待检测数据的记录时间、所述状态机模板实例的上一状态更新记录时间与所述规则树分支路径对应的时序规则预设的时间间隔,确定是否触发所述状态机模板实例更新;当确定所述状态机模板实例更新到所述状态机模板实例的多步状态条件的最后一步条件时,输出命中记录,并将所述状态机模板实例从所述未完成状态机队列中移除,其中,所述命中记录为命中规则的复杂时序事件。
较佳地,初始时间周期的水位线设置为零,则所述确定单元,具体用于确定上一时间周期内的待检测数据的最大记录时间;将所述最大记录时间与预设的容忍乱序时间的差值确定为当前时间周期的水位线。
较佳地,所述检测单元,具体用于计算所述命中所述状态机模板实例中的所述状态条件的待检测数据的系统时间和所述状态机模板实例的上一状态更新系统时间的差值;判断所述差值是否大于所述规则树分支路径对应的时序规则预设的时间间隔;如果是,则所述状态机模板实例超时;否则,所述状态机模板实例不超时。
较佳地,所述检测单元,具体用于当确定所述命中状态机模版实例的所述状态条件的待检测数据的记录时间和所述状态机模板实例的上一状态更新记录时间之间的差值小于等于所述规则树分支路径对应的时序规则预设的时间间隔时,则确定触发所述状态机模板实例更新。
本发明提供的复杂时序事件检测装置的技术效果可以参见上述第一方面或第一方面的各个实现方式的技术效果,此处不再赘述。
第三方面,本发明实施例提供了一种通信设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现本发明所述的复杂时序事件检测方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明所述的复杂时序事件检测方法中的步骤。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例提供的复杂时序事件检测方法的实施流程示意图;
图2为本发明实施例中,确定当前时间周期的水位线的实施流程示意图;
图3为本发明实施例中,优先队列重排序示例示意图;
图4为本发明实施例中,规则森林示例示意图;
图5为本发明实施例中,对从优先队列中移出的每一条待检测数据进行检测的实施流程示意图;
图6为本发明实施例中,判断状态机模板实例是否超时的实施流程示意图;
图7为本发明实施例提供的复杂时序事件检测装置的结构示意图;
图8为本发明实施例提供的通信设备的结构示意图。
具体实施方式
为了解决现有的事件检测的准确性低的问题,本发明提出了一种复杂时序事件检测方法及装置。
以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明,并且在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
在本文中,需要理解的是,本发明所涉及的技术术语中:
有限状态机:也称为FSM(Finite State Machine),其在任意时刻都处于有限状态集合中的某一状态。当其条件被命中时,将从当前状态转换到另一个状态,或者仍然保持在当前状态。状态机可归纳为4个要素,即现态、条件、动作、次态。“现态”和“条件”是因,“动作”和“次态”是果。其中:
现态:是指当前所处的状态。
条件:又称为“事件”。当一个条件被满足,将会触发一个动作,或者执行一次状态的迁移。
动作:条件满足后执行的动作。动作执行完毕后,可以迁移到新的状态,也可以仍旧保持原状态。动作不是必需的,当条件满足后,也可以不执行任何动作,直接迁移到新状态。
次态:条件满足后要迁往的新状态。“次态”是相对于“现态”而言的,“次态”一旦被激活,就转成新的“现态”了。
本发明实施例中,根据上述有限状态机的原理,将由预设的若干时序规则生成的规则森林的每颗规则树的根节点和叶子节点组成的路径对应一个状态机模板,将一个时序规则的各个阶段拆解为一个状态机的各个阶段,规则的逐步命中过程即对应状态机模板各个阶段的变化过程。
如图1所示,其为本发明实施例提供的复杂时序事件检测方法的实施流程示意图,可以包括以下步骤:
S11、对接收的每一条待检测数据标注系统时间戳,所述待检测数据携带有记录时间戳。
具体实施时,待检测数据可以包括实时数据和周期性数据。大数据平台对接收的每一条待检测数据标注系统时间戳,为其打上系统时间戳的标签,其中,所述待检测数据携带有记录时间戳,此时,每一条待检测数据都具有两个时间戳。所述系统时间用于表征接收所述待检测数据时的时间,所述记录时间用于表征所述待检测数据生成的时间,例如,如果待检测数据是安全日志,那么记录时间戳则来源于安全设备,是该安全日志产生时的时间戳。如果待检测数据是实时数据,那么其记录时间戳与系统时间戳的差不大;如果待检测数据时周期性数据(如利用文件型数据源,某天将前一天的日志发往大数据平台进行检测),那么,其记录时间戳与系统时间戳的差则较大。
需要说明的是,本发明实施例提出的复杂时序事件检测方法可以直接在大数据平台上实现,也可以在独立的服务器,如检测服务器上实现,本发明实施例对此不作限定。本发明实施例以在大数据平台上实现为例进行说明。
S12、确定当前时间周期的水位线。
具体实施时,大数据平台预先设置一个水位线字段,所述水位线用于表征时间标准,水位线字段的值周期性进行更新,更新的时间周期可以根据需要及经验值自行设定,本发明实施例对此不作限定,例如,可以将时间周期设置为1s。
具体实施时,初始时间周期的水位线可以设置为零。可以根据如图2所示的流程确定当前时间周期的水位线,包括以下步骤:
S21、确定上一时间周期内的待检测数据的最大记录时间。
具体实施时,大数据平台统计上一时间周期内的每一条待检测数据各自的记录时间,确定最大记录时间。
S22、将所述最大记录时间与预设的容忍乱序时间的差值确定为当前时间周期的水位线。
具体实施时,大数据平台计算所述最大记录时间与预设的容忍乱序时间的差值,将所述最大记录时间与预设的容忍乱序时间的差值确定为当前时间周期的水位线,其中,容忍乱序时间可以根据需要自行设定,本发明实施例对此不作限定,例如,可以设置为10秒。
S13、将所述当前时间周期内的记录时间大于所述水位线的待检测数据缓存至优先队列中,并按照记录时间的先后顺序对所述优先队列中的待检测数据进行重排序。
具体实施时,在当前时间周期,大数据平台将当前时间周期内的记录时间大于水位线的待检测数据缓存值优先队列中,并按照记录时间的先后顺序对所述优先队列中的待检测数据进行重排序。优先队列中的待检测数据是按照记录时间的先后顺序进行排列的,则每当有新数据加入时,都会触发优先队列中待检测数据的重排序,将记录时间小的数据排在队列的前面,记录时间大的数据按次序排在队列的后面。
S14、每当所述水位线更新时,将所述优先队列中记录时间小于所述更新后的水位线的待检测数据从所述优先队列中移出。
具体实施时,每当水位线更新时,即从当前时间周期进入下一个时间周期时,会触发一轮对优先队列中的待检测数据的检测,将优先队列中记录时间小于所述更新后的水位线的待检测数据从优先队列中移出,以进行后续的复杂时序事件检测。
如图3所示,其为优先队列重排序示例示意图,假设当前时间周期对应的t1时刻水位线位置如图3中所示,优先队列中已有四条待检测数据,按照时间先后排序依次是:e1、e2、e3、ex,当时间周期更新进入下一时间周期后,对应的t2时刻水位线位置如图3中所示,此时,对优先队列中已有待检测数据进行重排序,重排序后的待检测数据按时间先后排序依次是:e1、e2、e3、ex,其中,e1、e2的记录时间均小于t2时刻水位线,则将e1、e2按顺序从优先队列中移出,进而,以对移出的数据e1、e2进行复杂时序事件检测。
由于对于缓存时间(即每个时间周期)内的待检测数据重新排序,虽然发送至优先队列的待检测数据会有局部乱序的情况,但是经过优先队列后,最终会转变为有序的数据再进行检测。
S15、根据预设的规则森林以及从所述优先队列中移出的每一条待检测数据的系统时间和记录时间对从所述优先队列中移出的每一条待检测数据进行检测。
具体实施时,大数据平台根据预设的规则森林以及从所述优先队列中移出的每一条待检测数据的系统时间和记录时间对从所述优先队列中移出的每一条待检测数据进行检测。其中,所述规则森林为根据预设的各时序规则的子项和时序关系生成的,所述规则森林的每颗规则树从根节点到叶子节点的分支路径对应一个时序规则,所述每颗规则树的根节点为对应的时序规则的初始条件,所述每颗规则树的根节点和叶子节点组成的路径对应一个状态机模板。
具体地,大数据平台预先根据预设的各时序规则的子项和时序关系生成规则森林,规则森林的每颗规则树分支路径对应一个时序规则。例如,一条时序规则,如“Redis未授权漏洞利用”后发生“SSH登录尝试”,预设时间间隔为5分钟,则记为“Redis未授权漏洞利用”->“SSH登录尝试”(时间间隔:5min),其中,“Redis未授权漏洞利用”和“SSH登录尝试”为该时序规则的子项,“Redis未授权漏洞利用”->“SSH登录尝试”生成规则森林的一颗规则树分支路径,“Redis未授权漏洞利用”是该时序规则的初始条件,对应该规则树的根节点,“SSH登录尝试”对应该规则树的子节点。如果时序规则之间存在公共的子项,那么在规则森林中就体现为存在公共的节点,规则森林中每颗规则树的根节点和叶子节点组成的分支路径对应一个状态机模板。如图4所示,其为一个规则森林示例示意图,其由如下三条时序规则组成:时序规则1:S1->S2->S3(时间间隔:5min),时序规则2:S4->S2->S5(时间间隔:5min),时序规则3:S6->S7(时间间隔:5min),它们的公共节点即为S2,规则森林里每颗规则树从根节点到叶子节点的每一条分支路径对应一个状态机模板。
具体实施时,根据如图5所示的流程对从优先队列中移出的每一条待检测数据进行检测,可以包括以下步骤:
S31、当确定所述待检测数据命中某一规则树的根节点时,触发所述规则树分支路径对应的状态机模板实例化。
具体实施时,大数据平台将从优先队列中移出的每一条待检测数据按记录时间先后顺序一条一条进行检测,针对每一条待检测数据,当确定所述待检测数据命中某一规则树的根节点时,触发所述规则树分支路径对应的状态机模板实例化,并将该状态机模板缓存至未完成状态机队列中。其中,所述状态机模板实例中至少记录对应规则树分支路径中各个节点组成的多步状态条件、当前状态、状态更新系统时间、状态更新记录时间、命中记录等信息,其中,状态更新系统时间为命中状态机模板实例状态条件的待检测数据的系统时间,状态更新记录时间为命中状态机模板实例状态条件的待检测数据的记录时间。
仍以图4中所示的规则森林为例,假设待检测数据命中时序规则1的初始条件(即前置条件)S1,则触发其对应的状态机模板实例化,该时序规则对应的规则树分支路径的当前状态为:命中S1,此时的状态机模板实例的多步状态条件为S1、S2和S3,状态更新系统时间:命中S1的待检测数据的系统时间,状态更新记录时间:命中S1的待检测数据的记录时间,命中记录:即该待检测数据。
S32、当后续待检测数据命中所述状态机模板实例中的后续状态条件时,根据命中所述状态机模板实例中的所述状态条件的待检测数据的系统时间、所述状态机模板实例的上一状态更新系统时间与所述规则树分支路径对应的时序规则预设的时间间隔,判断所述状态机模板实例是否超时。如果是,则执行步骤S33,否则,执行步骤S34。
具体实施时,通过如图6所示的流程判断状态机模板实例是否超时,可以包括以下步骤:
S41、计算所述命中所述状态机模板实例中的所述状态条件的待检测数据的系统时间和状态机模版实例的上一状态更新系统时间的差值。
具体地,当后续待检测数据命中状态机模板实例中的状态条件时,大数据平台计算命中所述状态机模板实例中的所述状态条件的待检测数据的系统时间和所述状态机模版实例的上一状态更新系统时间之间的差值。
S42、判断所述差值是否大于所述规则树分支路径对应的时序规则预设的时间间隔,如果是,则执行步骤S43,否则,执行步骤S44。
仍以图4中所示的规则森林为例,当待检测数据命中S1,触发状态机模板1实例化以后,后续待检测数据又命中了S2,此时,计算所述状态机模板实例中命中S1的待检测数据的系统时间和状态机模版实例的状态更新系统时间(即命中S2的后续待检测数据的系统时间)的差值,判断该差值是否大于该规则树分支路径对应的时序规则预设的时间间隔(5分钟)。
S43、所述状态机模板实例超时。
S44、所述状态机模板实例不超时。
S33、将所述状态机模板实例从缓存的未完成状态机队列中移除。
具体实施时,如果所述状态机模板实例超时,大数据平台则将所述状态机模板实例从缓存的未完成状态机队列中移除(即删除,该状态机模板实例的状态条件满足失败)。
S34、根据所述命中所述状态机模版实例的所述状态条件的待检测数据的记录时间、所述状态机模版实例的上一状态更新记录时间与所述规则树分支路径对应的时序规则预设的时间间隔,确定是否触发所述状态机模板实例更新。
具体实施时,如果所述状态机模板实例未超时,则大数据平台继续根据所述命中状态机模版实例的所述状态条件的待检测数据的记录时间、所述状态机模版实例的上一状态更新记录时间与所述规则树分支路径对应的时序规则预设的时间间隔,确定是否触发所述状态机模板实例更新。
具体地,当命中状态机模版实例的所述状态条件的待检测数据的记录时间和所述状态机模版实例的上一状态更新记录时间之间的差值小于等于所述规则树分支路径对应的时序规则预设的时间间隔时,则确定触发所述状态机模板实例更新,状态机模板实例将会更新当前状态、状态更新系统时间和状态更新记录时间,否则不更新。
S35、当确定所述状态机模板实例更新到所述状态机模板实例的多步状态条件的最后一步条件时,输出命中记录,并将所述状态机模板实例从所述未完成状态机队列中移除。
具体实施时,当大数据平台确定所述状态机模板实例更新到所述状态机模板实例的多步状态条件的最后一步条件时,输出命中记录,并将所述状态机模板实例从所述未完成状态机队列中移除,其中,所述命中记录为命中规则的复杂时序事件。
本发明实施例针对在大数据平台下,Kafka等数据组件存在多个分区导致数据在输出后存在局部乱序的情况,提出水位线和优先队列的方式,对于待检测数据进行一定时长的缓存和重排序,解决了数据局部乱序的问题,在数据源存在事实数据和周期性数据混杂接入的情况下,提出双重时间戳状态机,使用系统时间进行状态机的超时判断,使用记录时间进行状态机的条件命中判断,从而可以在接入混杂数据的情况下,保证时序规则的正确命中判断,同时可以对时序规则的前置条件(初始条件)进行正确超时,大大提高了复杂时序事件检测的准确性。
基于同一发明构思,本发明实施例还提供了一种复杂时序事件检测装置,由于上述复杂时序事件检测装置解决问题的原理与复杂时序事件检测方法相似,因此上述装置的实施可以参见方法的实施,重复之处不再赘述。
如图7所示,其为本发明实施例提供的复杂时序事件检测装置的结构示意图,可以包括:
标注单元51,用于对接收的每一条待检测数据标注系统时间戳,其中,所述待检测数据携带有记录时间戳,所述系统时间用于表征接收所述待检测数据时的时间,所述记录时间用于表征所述待检测数据生成的时间;
确定单元52,用于确定当前时间周期的水位线,所述水位线用于表征时间标准;
缓存单元53,用于将所述当前时间周期内的记录时间大于所述水位线的待检测数据缓存至优先队列中,并按照记录时间的先后顺序对所述优先队列中的待检测数据进行重排序;
优先队列处理单元54,用于每当所述水位线更新时,将所述优先队列中记录时间小于所述更新后的水位线的待检测数据从所述优先队列中移出;
检测单元55,用于根据预设的规则森林以及从所述优先队列中移出的每一条待检测数据的系统时间和记录时间对从所述优先队列中移出的每一条待检测数据进行检测,其中,所述规则森林为根据预设的各时序规则的子项和时序关系生成的,所述规则森林的每颗规则树从根节点到叶子节点的分支路径对应一个时序规则。
较佳地,所述每颗规则树的根节点为对应的时序规则的初始条件,所述每颗规则树的根节点和叶子节点组成的路径对应一个状态机模板;以及
所述检测单元55,具体用于当确定所述待检测数据命中某一规则树的根节点时,触发所述规则树分支路径对应的状态机模板实例化,所述状态机模板实例中至少包含所述规则树分支路径中各个节点所组成的多步状态条件、当前状态、状态更新系统时间、状态更新记录时间和命中记录信息,其中,所述状态更新系统时间为命中所述状态机模板实例状态条件的待检测数据的系统时间,所述状态更新记录时间为命中所述状态机模板实例状态条件的待检测数据的记录时间;当后续待检测数据命中所述状态机模板实例中的后续状态条件时,根据命中所述状态机模板实例中的所述状态条件的待检测数据的系统时间、所述状态机模板实例的上一状态更新系统时间与所述规则树分支路径对应的时序规则预设的时间间隔,判断所述状态机模板实例是否超时;如果是,则将所述状态机模板实例从缓存的未完成状态机队列中移除;如果否,则根据所述命中所述状态机模版实例的所述状态条件的待检测数据的记录时间、所述状态机模板实例的上一状态更新记录时间与所述规则树分支路径对应的时序规则预设的时间间隔,确定是否触发所述状态机模板实例更新;当确定所述状态机模板实例更新到所述状态机模板实例的多步状态条件的最后一步条件时,输出命中记录,并将所述状态机模板实例从所述未完成状态机队列中移除,其中,所述命中记录为命中规则的复杂时序事件。
较佳地,初始时间周期的水位线设置为零,则所述确定单元52,具体用于确定上一时间周期内的待检测数据的最大记录时间;将所述最大记录时间与预设的容忍乱序时间的差值确定为当前时间周期的水位线。
较佳地,所述检测单元55,具体用于计算所述命中所述状态机模板实例中的所述状态条件的待检测数据的系统时间和所述状态机模板实例的上一状态更新系统时间的差值;判断所述差值是否大于所述规则树分支路径对应的时序规则预设的时间间隔;如果是,则所述状态机模板实例超时;否则,所述状态机模板实例不超时。
较佳地,所述检测单元55,具体用于当确定所述命中状态机模版实例的所述状态条件的待检测数据的记录时间和所述状态机模板实例的上一状态更新记录时间之间的差值小于等于所述规则树分支路径对应的时序规则预设的时间间隔时,则确定触发所述状态机模板实例更新。
基于同一技术构思,本发明实施例还提供了一种通信设备600,参照图8所示,通信设备600用于实施上述方法实施例记载的复杂时序事件检测方法,该实施例的通信设备600可以包括:存储器601、处理器602以及存储在所述存储器中并可在所述处理器上运行的计算机程序,例如复杂时序事件检测程序。所述处理器执行所述计算机程序时实现上述各个复杂时序事件检测方法实施例中的步骤,例如图1所示的步骤S11。或者,所述处理器执行所述计算机程序时实现上述各装置实施例中各模块/单元的功能,例如51。
本发明实施例中不限定上述存储器601、处理器602之间的具体连接介质。本申请实施例在图8中以存储器601、处理器602之间通过总线603连接,总线603在图8中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线603可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器601可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器601也可以是非易失性存储器(non-volatilememory),例如只读存储器,快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD)、或者存储器601是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器601可以是上述存储器的组合。
处理器602,用于实现如图1所示的一种复杂时序事件检测方法,包括:
所述处理器602,用于调用所述存储器601中存储的计算机程序执行如图1中所示的步骤S11、对接收的每一条待检测数据标注系统时间戳,所述待检测数据携带有记录时间戳,步骤S12、确定当前时间周期的水位线,步骤S13、将所述当前时间周期内的记录时间大于所述水位线的待检测数据缓存至优先队列中,并按照记录时间的先后顺序对所述优先队列中的待检测数据进行重排序,步骤S14、每当所述水位线更新时,将所述优先队列中记录时间小于所述更新后的水位线的待检测数据从所述优先队列中移出,和步骤S15、根据预设的规则森林以及从所述优先队列中移出的每一条待检测数据的系统时间和记录时间对从所述优先队列中移出的每一条待检测数据进行检测。
本申请实施例还提供了一种计算机可读存储介质,存储为执行上述处理器所需执行的计算机可执行指令,其包含用于执行上述处理器所需执行的程序。
在一些可能的实施方式中,本发明提供的复杂时序事件检测方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在通信设备上运行时,所述程序代码用于使所述通信设备执行本说明书上述描述的根据本发明各种示例性实施方式的复杂时序事件检测方法中的步骤,例如,所述通信设备可以执行如图1中所示的步骤S11、对接收的每一条待检测数据标注系统时间戳,所述待检测数据携带有记录时间戳,步骤S12、确定当前时间周期的水位线,步骤S13、将所述当前时间周期内的记录时间大于所述水位线的待检测数据缓存至优先队列中,并按照记录时间的先后顺序对所述优先队列中的待检测数据进行重排序,步骤S14、每当所述水位线更新时,将所述优先队列中记录时间小于所述更新后的水位线的待检测数据从所述优先队列中移出,和步骤S15、根据预设的规则森林以及从所述优先队列中移出的每一条待检测数据的系统时间和记录时间对从所述优先队列中移出的每一条待检测数据进行检测。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本发明的实施方式的用于复杂时序事件检测的程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在计算设备上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (12)

1.一种复杂时序事件检测方法,其特征在于,包括:
对接收的每一条待检测数据标注系统时间戳,其中,所述待检测数据携带有记录时间戳,所述系统时间用于表征接收所述待检测数据时的时间,所述记录时间用于表征所述待检测数据生成的时间;
确定当前时间周期的水位线,所述水位线用于表征时间标准;
将所述当前时间周期内的记录时间大于所述水位线的待检测数据缓存至优先队列中,并按照记录时间的先后顺序对所述优先队列中的待检测数据进行重排序;
每当所述水位线更新时,将所述优先队列中记录时间小于所述更新后的水位线的待检测数据从所述优先队列中移出;
根据预设的规则森林以及从所述优先队列中移出的每一条待检测数据的系统时间和记录时间对从所述优先队列中移出的每一条待检测数据进行检测,其中,所述规则森林为根据预设的各时序规则的子项和时序关系生成的,所述规则森林的每颗规则树从根节点到叶子节点的分支路径对应一个时序规则。
2.如权利要求1所述的方法,其特征在于,所述每颗规则树的根节点为对应的时序规则的初始条件,所述每颗规则树的根节点和叶子节点组成的分支路径对应一个状态机模板;以及
根据预设的规则森林以及从所述优先队列中移出的每一条待检测数据的系统时间和记录时间对从所述优先队列中移出的每一条待检测数据进行检测,具体包括:
当确定所述待检测数据命中某一规则树的根节点时,触发所述规则树分支路径对应的状态机模板实例化,所述状态机模板实例中至少包含所述规则树分支路径中各个节点所组成的多步状态条件、当前状态、状态更新系统时间、状态更新记录时间和命中记录信息,其中,所述状态更新系统时间为命中所述状态机模板实例状态条件的待检测数据的系统时间,所述状态更新记录时间为命中所述状态机模板实例状态条件的待检测数据的记录时间;
当后续待检测数据命中所述状态机模板实例中的后续状态条件时,根据命中所述状态机模板实例中的所述状态条件的待检测数据的系统时间、所述状态机模板实例的上一状态更新系统时间与所述规则树分支路径对应的时序规则预设的时间间隔,判断所述状态机模板实例是否超时;
如果是,则将所述状态机模板实例从缓存的未完成状态机队列中移除;
如果否,则根据所述命中所述状态机模版实例的所述状态条件的待检测数据的记录时间、所述状态机模板实例的上一状态更新记录时间与所述规则树分支路径对应的时序规则预设的时间间隔,确定是否触发所述状态机模板实例更新;
当确定所述状态机模板实例更新到所述状态机模板实例的多步状态条件的最后一步条件时,输出命中记录,并将所述状态机模板实例从所述未完成状态机队列中移除,其中,所述命中记录为命中规则的复杂时序事件。
3.如权利要求1所述的方法,其特征在于,初始时间周期的水位线设置为零,则确定当前时间周期的水位线,具体包括:
确定上一时间周期内的待检测数据的最大记录时间;
将所述最大记录时间与预设的容忍乱序时间的差值确定为当前时间周期的水位线。
4.如权利要求2所述的方法,其特征在于,根据所述命中所述状态机模板实例中的所述状态条件的待检测数据的系统时间、所述状态机模板实例的上一状态更新系统时间与所述规则树对应分支路径对应的时序规则预设的时间间隔,判断所述状态机模板实例是否超时,具体包括:
计算所述命中所述状态机模板实例中的所述状态条件的待检测数据的系统时间和所述状态机模板实例的上一状态更新系统时间的差值;
判断所述差值是否大于所述规则树分支路径对应的时序规则预设的时间间隔;
如果是,则所述状态机模板实例超时;
否则,所述状态机模板实例不超时。
5.如权利要求2所述的方法,其特征在于,根据所述命中状态机模版实例的所述状态条件的待检测数据的记录时间、所述状态机模板实例的上一状态更新记录时间与所述规则树分支路径对应的时序规则预设的时间间隔,确定是否触发所述状态机模板实例更新,具体包括:
当确定所述命中状态机模版实例的所述状态条件的待检测数据的记录时间和所述状态机模板实例的上一状态更新记录时间之间的差值小于等于所述规则树分支路径对应的时序规则预设的时间间隔时,则确定触发所述状态机模板实例更新。
6.一种复杂时序事件检测装置,其特征在于,包括:
标注单元,用于对接收的每一条待检测数据标注系统时间戳,其中,所述待检测数据携带有记录时间戳,所述系统时间用于表征接收所述待检测数据时的时间,所述记录时间用于表征所述待检测数据生成的时间;
确定单元,用于确定当前时间周期的水位线,所述水位线用于表征时间标准;
缓存单元,用于将所述当前时间周期内的记录时间大于所述水位线的待检测数据缓存至优先队列中,并按照记录时间的先后顺序对所述优先队列中的待检测数据进行重排序;
优先队列处理单元,用于每当所述水位线更新时,将所述优先队列中记录时间小于所述更新后的水位线的待检测数据从所述优先队列中移出;
检测单元,用于根据预设的规则森林以及从所述优先队列中移出的每一条待检测数据的系统时间和记录时间对从所述优先队列中移出的每一条待检测数据进行检测,其中,所述规则森林为根据预设的各时序规则的子项和时序关系生成的,所述规则森林的每颗规则树从根节点到叶子节点的分支路径对应一个时序规则。
7.如权利要求6所述的装置,其特征在于,所述每颗规则树的根节点为对应的时序规则的初始条件,所述每颗规则树的根节点和叶子节点组成的路径对应一个状态机模板;以及
所述检测单元,具体用于当确定所述待检测数据命中某一规则树的根节点时,触发所述规则树分支路径对应的状态机模板实例化,所述状态机模板实例中至少包含所述规则树分支路径中各个节点所组成的多步状态条件、当前状态、状态更新系统时间、状态更新记录时间和命中记录信息,其中,所述状态更新系统时间为命中所述状态机模板实例状态条件的待检测数据的系统时间,所述状态更新记录时间为命中所述状态机模板实例状态条件的待检测数据的记录时间;当后续待检测数据命中所述状态机模板实例中的后续状态条件时,根据命中所述状态机模板实例中的所述状态条件的待检测数据的系统时间、所述状态机模板实例的上一状态更新系统时间与所述规则树分支路径对应的时序规则预设的时间间隔,判断所述状态机模板实例是否超时;如果是,则将所述状态机模板实例从缓存的未完成状态机队列中移除;如果否,则根据所述命中所述状态机模版实例的所述状态条件的待检测数据的记录时间、所述状态机模板实例的上一状态更新记录时间与所述规则树分支路径对应的时序规则预设的时间间隔,确定是否触发所述状态机模板实例更新;当确定所述状态机模板实例更新到所述状态机模板实例的多步状态条件的最后一步条件时,输出命中记录,并将所述状态机模板实例从所述未完成状态机队列中移除,其中,所述命中记录为命中规则的复杂时序事件。
8.如权利要求6所述的装置,其特征在于,初始时间周期的水位线设置为零,则所述确定单元,具体用于确定上一时间周期内的待检测数据的最大记录时间;将所述最大记录时间与预设的容忍乱序时间的差值确定为当前时间周期的水位线。
9.如权利要求7所述的装置,其特征在于,
所述检测单元,具体用于计算所述命中所述状态机模板实例中的所述状态条件的待检测数据的系统时间和所述状态机模板实例的上一状态更新系统时间的差值;判断所述差值是否大于所述规则树分支路径对应的时序规则预设的时间间隔;如果是,则所述状态机模板实例超时;否则,所述状态机模板实例不超时。
10.如权利要求7所述的装置,其特征在于,
所述检测单元,具体用于当确定所述命中状态机模版实例的所述状态条件的待检测数据的记录时间和所述状态机模板实例的上一状态更新记录时间之间的差值小于等于所述规则树分支路径对应的时序规则预设的时间间隔时,则确定触发所述状态机模板实例更新。
11.一种通信设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1~5任一项所述的复杂时序事件检测方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1~5任一项所述的复杂时序事件检测方法中的步骤。
CN201911112826.6A 2019-11-14 2019-11-14 一种复杂时序事件检测方法及装置 Active CN110928717B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911112826.6A CN110928717B (zh) 2019-11-14 2019-11-14 一种复杂时序事件检测方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911112826.6A CN110928717B (zh) 2019-11-14 2019-11-14 一种复杂时序事件检测方法及装置

Publications (2)

Publication Number Publication Date
CN110928717A true CN110928717A (zh) 2020-03-27
CN110928717B CN110928717B (zh) 2023-04-07

Family

ID=69853019

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911112826.6A Active CN110928717B (zh) 2019-11-14 2019-11-14 一种复杂时序事件检测方法及装置

Country Status (1)

Country Link
CN (1) CN110928717B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112306465A (zh) * 2020-10-30 2021-02-02 北京字节跳动网络技术有限公司 一种计数方法及装置
CN113127514A (zh) * 2021-04-09 2021-07-16 东莞理工学院 一种支持事件时序约束的供应链复杂事件检测方法
CN113204464A (zh) * 2021-04-23 2021-08-03 商盟商务服务有限公司 基于业务场景的实时业务监控方法、系统、终端及介质
CN115426079A (zh) * 2022-11-04 2022-12-02 浙江地芯引力科技有限公司 数据解调方法、装置及电子产品

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100205484A1 (en) * 2009-02-12 2010-08-12 International Business Machines Corporation System and method for demonstrating the correctness of an execution trace in concurrent processing environments
US20110261698A1 (en) * 2010-04-23 2011-10-27 Kamerkar Sushil S Traffic Generator with Priority Flow Control
CN102497315A (zh) * 2011-12-09 2012-06-13 西安电子科技大学 基于多路径的深空文件传输方法
US8452901B1 (en) * 2011-12-30 2013-05-28 Emc Corporation Ordered kernel queue for multipathing events
US9553951B1 (en) * 2013-04-24 2017-01-24 Amazon Technologies, Inc. Semaphores in distributed computing environments
CN107484204A (zh) * 2017-07-21 2017-12-15 京信通信系统(中国)有限公司 基站上行突发缓解方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100205484A1 (en) * 2009-02-12 2010-08-12 International Business Machines Corporation System and method for demonstrating the correctness of an execution trace in concurrent processing environments
US20110261698A1 (en) * 2010-04-23 2011-10-27 Kamerkar Sushil S Traffic Generator with Priority Flow Control
CN102497315A (zh) * 2011-12-09 2012-06-13 西安电子科技大学 基于多路径的深空文件传输方法
US8452901B1 (en) * 2011-12-30 2013-05-28 Emc Corporation Ordered kernel queue for multipathing events
US9553951B1 (en) * 2013-04-24 2017-01-24 Amazon Technologies, Inc. Semaphores in distributed computing environments
CN107484204A (zh) * 2017-07-21 2017-12-15 京信通信系统(中国)有限公司 基站上行突发缓解方法及装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112306465A (zh) * 2020-10-30 2021-02-02 北京字节跳动网络技术有限公司 一种计数方法及装置
CN112306465B (zh) * 2020-10-30 2024-05-24 抖音视界有限公司 一种计数方法及装置
CN113127514A (zh) * 2021-04-09 2021-07-16 东莞理工学院 一种支持事件时序约束的供应链复杂事件检测方法
CN113204464A (zh) * 2021-04-23 2021-08-03 商盟商务服务有限公司 基于业务场景的实时业务监控方法、系统、终端及介质
CN113204464B (zh) * 2021-04-23 2023-04-25 商盟商务服务有限公司 基于业务场景的实时业务监控方法、系统、终端及介质
CN115426079A (zh) * 2022-11-04 2022-12-02 浙江地芯引力科技有限公司 数据解调方法、装置及电子产品
CN115426079B (zh) * 2022-11-04 2023-02-24 浙江地芯引力科技有限公司 数据解调方法、装置及电子产品

Also Published As

Publication number Publication date
CN110928717B (zh) 2023-04-07

Similar Documents

Publication Publication Date Title
CN110928717B (zh) 一种复杂时序事件检测方法及装置
KR100943012B1 (ko) 멀티-라인 로그 엔트리의 머징
US9722900B2 (en) Methods and computer program products for transaction analysis of network traffic in a network device
US11516182B2 (en) Firewall rules intelligence
US8291005B2 (en) Providing consistency in processing data streams
JP5090661B2 (ja) ソフトウェア動作モデル化装置、ソフトウェア動作監視装置、ソフトウェア動作モデル化方法及びソフトウェア動作監視方法
US20140101761A1 (en) Systems and methods for capturing, replaying, or analyzing time-series data
US20210312472A1 (en) Method and system for prediction of smart contract violation using dynamic state space creation
US20150106827A1 (en) Rpc acceleration based on previously memorized flows
CN107517110A (zh) 一种分布式系统中单板配置自恢复方法及装置
US9886331B2 (en) Network traffic processing
US20240045836A1 (en) Network file deduplication using decaying bloom filters
US20150113090A1 (en) Selecting a primary storage device
US20140245082A1 (en) Implementing client based throttled error logging
Wang et al. Design and analysis of a robust pipelined memory system
EP3396553A1 (en) Method and device for processing data after restart of node
US9843550B2 (en) Processing messages in a data messaging system using constructed resource models
CN113886175A (zh) 基于Hystrix的分布式系统集群熔断方法及分布式系统
WO2021070352A1 (ja) グラフ関連付けシステムおよびグラフ関連付け方法
US10810098B2 (en) Probabilistic processor monitoring
CN113810392B (zh) 一种海量数据的top排名方法、设备及存储介质
EP4274160A1 (en) System and method for machine learning based malware detection
CN117938980B (zh) 应用于内容分发网络的数据传输方法、装置、设备及介质
CN114442904B (zh) 用于管理存储系统的方法、设备和计算机程序产品
CN117792961B (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
CB02 Change of applicant information

Address after: 100089 Beijing city Haidian District Road No. 4 North wa Yitai three storey building

Applicant after: NSFOCUS Technologies Group Co.,Ltd.

Applicant after: NSFOCUS TECHNOLOGIES Inc.

Address before: 100089 Beijing city Haidian District Road No. 4 North wa Yitai three storey building

Applicant before: NSFOCUS INFORMATION TECHNOLOGY Co.,Ltd.

Applicant before: NSFOCUS TECHNOLOGIES Inc.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant