一种异步嵌套规则时序触发方法和系统技术方案

技术编号:38931687 阅读:21 留言:0更新日期:2023-09-25 09:36
本发明专利技术提供了一种异步嵌套规则时序触发方法和系统,包括:根据业务需求配置规则,得到配置文件;将配置文件内的规则分为普通规则和嵌套规则;将嵌套规则分为独立普通规则、前置规则和后置规则;将普通规则和独立普通规则加载进普通规则处理容器;将前置规则加载进前置规则处理容器;将后置规则加载进后置规则处理容器;将源数据输入普通规则处理容器,确定是否满足规则的触发条件;将源数据输入所述前置规则处理容器,得到中间数据组;将源数据和中间数据组输入后置规则处理容器,确定是否满足规则的触发条件;以解耦嵌套规则的数据依赖,异步化嵌套规则的判断,提高规则执行的效率,缩短规则判断执行的时间。缩短规则判断执行的时间。缩短规则判断执行的时间。

【技术实现步骤摘要】
一种异步嵌套规则时序触发方法和系统


[0001]本专利技术涉及自动化
,具体而言,涉及一种异步嵌套规则时序触发方法和系统。

技术介绍

[0002]随着“大检修”、“大运行”体系建设的不断深入,220kV及以上电压等级变电所已全面步入无人值守、集中监控的运行模式。为适应变电所无人值守模式,近年来重点推进变电所无人值守工作,依据现有无人值守变电所相关标准,进一步完善无人值守变电所技术标准体系,规范无人值守的技术要求,指导无人值守变电所的建设。在铁路沿线的变电所,须适应变电所无人值守模式。变电所中部署的辅助监控系统会定期对所内各种开关、在线监测等设备采集相关监控数据,如:设备的电流、电压、开关状态等。技术人员会在规则引擎中配置监控数据触发事件的规则,规则触发后会通知到技术人员。
[0003]现有的嵌套规则触发方式是将嵌套规则产生的结果数据再以采集数据的方式输入给后续用到该结果数据的规则。后续规则在判断规则是否触发的处理方式上有两种方式:一种是不区分数据来源,即:只判断当前时刻数据区域的数据是否触发规则,这种方式在源数据不断输入,规则判断异步化的情况下,极易因数据版本不一致,导致判断结果出现错误的情况;另一种方式是串行化嵌套数据,此方式可以保证数据版本的一致性,但对性能的影响极大,特别是在多级嵌套规则中,后续规则需要等待前置规则依次判断执行的结果,性能低下,极易产生数据积压。因此,现有的嵌套规则时序触发技术,性能低,耗时长,易出错。使用嵌套数据的规则不能确定嵌套规则是否会触发,只能轮询或者等待事件触发或超时,会阻塞后续数据判断导致性能很低;嵌套规则触发产生的数据会在后续规则判断中混淆,导致后续规则判断结果错误。同时,因为后续规则使用的嵌套触发结果数据是异步的,会导致后续规则中使用的数据版本不一致,也会导致后续规则判断错误。
[0004]有鉴于此,本专利技术提出了一种异步嵌套规则时序触发方法和系统,解耦嵌套规则的数据依赖,异步化嵌套规则的判断,提高规则执行的效率,缩短规则判断执行的时间。保证嵌套规则用于判断的数据的正确性,保证规则判断结果的正确性。降低嵌套规则判断逻辑编写的复杂性,实现复杂嵌套规则配置简单化的目标。解决嵌套规则执行效率低,以及数据版本不一致导致判断结果错误率高的问题。

技术实现思路

[0005]本专利技术的目的在于提供一种异步嵌套规则时序触发方法,包括:根据业务需求配置规则,得到配置文件;将所述配置文件内的规则分为普通规则和嵌套规则;将所述嵌套规则分为独立普通规则、前置规则和后置规则;将所述普通规则和所述独立普通规则加载进普通规则处理容器;将所述前置规则加载进前置规则处理容器;将所述后置规则加载进后置规则处理容器;将源数据输入所述普通规则处理容器,确定是否满足规则的触发条件;将所述源数据输入所述前置规则处理容器,得到中间数据组;将所述源数据和所述中间数据
组输入所述后置规则处理容器,确定是否满足规则的触发条件。
[0006]进一步的,所述普通规则处理容器、所述前置规则处理容器和所述后置规则处理容器均为独立接收数据和对数据进行处理以及实现规则判断的执行单元。
[0007]进一步的,将源数据输入所述普通规则处理容器,确定是否满足规则的触发条件,包括:所述普通规则处理容器在接收到所述源数据后,开启多线程,进行数据处理和规则判断逻辑;若满足规则触发条件则直接触发告警,发送事件数据给业务;若所述普通规则处理容器内没有可触发的规则,则不进行处理。
[0008]进一步的,将所述源数据输入所述前置规则处理容器,得到中间数据组,包括:所述前置规则处理容器接收到所述源数据后,开启多线程,进行数据处理和规则判断逻辑;若满足规则,则执行触发逻辑,并将产生的结果数据和触发本次规则的源数据重组成所述中间数据组推送给所述后置规则处理容器。
[0009]进一步的,将所述源数据和所述中间数据组输入所述后置规则处理容器,确定是否满足规则的触发条件,包括:所述后置规则处理容器接收到所述源数据或所述中间数据组后,开启多线程,将所述中间数据组拆分成普通的规则源数据格式进行预处理转换,得到多个转换数据;然后将所述多个转换数据插入/更新到所述后置规则处理容器内的存数据区;触发所述后置规则处理容器内的规则判断方法,执行规则判断;若所述后置规则处理容器内有规则匹配,则触发事件数据推送给业务系统;若没有规则匹配,则本次处理结束。
[0010]本专利技术的目的在于提供一种异步嵌套规则时序触发系统,包括配置文件获取模块、配置文件划分模块、嵌套规则划分模块、加载模块和触发模块;所述配置文件获取模块用于根据业务需求配置规则,得到配置文件;所述配置文件划分模块用于将所述配置文件内的规则分为普通规则和嵌套规则;所述嵌套规则划分模块用于将所述嵌套规则分为独立普通规则、前置规则和后置规则;所述加载模块用于将所述普通规则和所述独立普通规则加载进普通规则处理容器;将所述前置规则加载进前置规则处理容器;将所述后置规则加载进后置规则处理容器;所述触发模块用于将源数据输入所述普通规则处理容器,确定是否满足规则的触发条件;将所述源数据输入所述前置规则处理容器,得到中间数据组;将所述源数据和所述中间数据组输入所述后置规则处理容器,确定是否满足规则的触发条件。
[0011]进一步的,所述普通规则处理容器、所述前置规则处理容器和所述后置规则处理容器均为独立接收数据和对数据进行处理以及实现规则判断的执行单元。
[0012]进一步的,将源数据输入所述普通规则处理容器,确定是否满足规则的触发条件,包括:所述普通规则处理容器在接收到所述源数据后,开启多线程,进行数据处理和规则判断逻辑;若满足规则触发条件则直接触发告警,发送事件数据给业务;若所述普通规则处理容器内没有可触发的规则,则不进行处理。
[0013]进一步的,将所述源数据输入所述前置规则处理容器,得到中间数据组,包括:所述前置规则处理容器接收到所述源数据后,开启多线程,进行数据处理和规则判断逻辑;若满足规则,则执行触发逻辑,并将产生的结果数据和触发本次规则的源数据重组成所述中间数据组推送给所述后置规则处理容器。
[0014]进一步的,将所述源数据和所述中间数据组输入所述后置规则处理容器,确定是否满足规则的触发条件,包括:所述后置规则处理容器接收到所述源数据或所述中间数据组后,开启多线程,将所述中间数据组拆分成普通的规则源数据格式进行预处理转换,得到
多个转换数据;然后将所述多个转换数据插入/更新到所述后置规则处理容器内的存数据区;触发所述后置规则处理容器内的规则判断方法,执行规则判断;若所述后置规则处理容器内有规则匹配,则触发事件数据推送给业务系统;若没有规则匹配,则本次处理结束。
[0015]本专利技术实施例的技术方案至少具有如下优点和有益效果:通过设置前置规则处理容器处理前置规则,得到中间数据组;然后将中间数据组发送给后置规则处理容器,可以保证嵌套规则在判断时用到的数据版本的一致性。
[0016]普通规则和嵌套规则相互隔离,避免处理普通规则和处理嵌套规则本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种异步嵌套规则时序触发方法,其特征在于,包括:根据业务需求配置规则,得到配置文件;将所述配置文件内的规则分为普通规则和嵌套规则;将所述嵌套规则分为独立普通规则、前置规则和后置规则;将所述普通规则和所述独立普通规则加载进普通规则处理容器;将所述前置规则加载进前置规则处理容器;将所述后置规则加载进后置规则处理容器;将源数据输入所述普通规则处理容器,确定是否满足规则的触发条件;将所述源数据输入所述前置规则处理容器,得到中间数据组;将所述源数据和所述中间数据组输入所述后置规则处理容器,确定是否满足规则的触发条件。2.根据权利要求1所述的异步嵌套规则时序触发方法,其特征在于,所述普通规则处理容器、所述前置规则处理容器和所述后置规则处理容器均为独立接收数据和对数据进行处理以及实现规则判断的执行单元。3.根据权利要求1所述的异步嵌套规则时序触发方法,其特征在于,将源数据输入所述普通规则处理容器,确定是否满足规则的触发条件,包括:所述普通规则处理容器在接收到所述源数据后,开启多线程,进行数据处理和规则判断逻辑;若满足规则触发条件则直接触发告警,发送事件数据给业务;若所述普通规则处理容器内没有可触发的规则,则不进行处理。4.根据权利要求1所述的异步嵌套规则时序触发方法,其特征在于,将所述源数据输入所述前置规则处理容器,得到中间数据组,包括:所述前置规则处理容器接收到所述源数据后,开启多线程,进行数据处理和规则判断逻辑;若满足规则,则执行触发逻辑,并将产生的结果数据和触发本次规则的源数据重组成所述中间数据组推送给所述后置规则处理容器。5.根据权利要求1所述的异步嵌套规则时序触发方法,其特征在于,将所述源数据和所述中间数据组输入所述后置规则处理容器,确定是否满足规则的触发条件,包括:所述后置规则处理容器接收到所述源数据或所述中间数据组后,开启多线程,将所述中间数据组拆分成普通的规则源数据格式进行预处理转换,得到多个转换数据;然后将所述多个转换数据插入/更新到所述后置规则处理容器内的存数据区;触发所述后置规则处理容器内的规则判断方法,执行规则判断;若所述后置规则处理容器内有规则匹配,则触发事件数据推送给业务系统;若没有规则匹配,则本次处理结束。6.一种异步嵌套规则时序触发系统,其特征在于,包括配置文件获取模块、配置文件划分模块、嵌套规则划分模块...

【专利技术属性】
技术研发人员:李存昌邓如彬李喆李胜张鹏黄圣波
申请(专利权)人:成都交大光芒科技股份有限公司
类型:发明
国别省市:

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

1