买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种设备告警数据防抖方法_杭州极能科技有限公司_202211126914.3 

申请/专利权人:杭州极能科技有限公司

申请日:2022-09-16

公开(公告)日:2024-04-16

公开(公告)号:CN115484179B

主分类号:H04L43/028

分类号:H04L43/028;H04L43/16;H04L41/0631;H04L41/0604

优先权:

专利状态码:有效-授权

法律状态:2024.04.16#授权;2023.01.03#实质审查的生效;2022.12.16#公开

摘要:本发明公开了一种设备告警数据防抖方法,属于数据处理技术领域,包括对状态量相关波动数据的过滤、对采集数据值相关波动数据的过滤,其特征在于:步骤1:通过设置时间间隔过滤状态量相关波动数据;步骤2:通过设置告警值、恢复值过滤采集数据值相关波动数据;本发明有效地减少了因数据波动产生的大量无效告警,显著的提升了对设备监测的效果及数据处理的效率。

主权项:1.一种设备告警数据防抖方法,包括对状态量相关波动数据的过滤、对采集数据值相关波动数据的过滤,其特征在于:步骤1:通过设置时间间隔过滤状态量相关波动数据;步骤2:通过设置告警值、恢复值过滤采集数据值相关波动数据;关于步骤1,针对状态量告警,设置一个时间间隔,在该时间间隔内状态恢复,则将该状态变更视为数据波动,不触发状态量告警,在该时间间隔内状态未恢复,则触发状态量告警;关于步骤2,针对采集数据值告警,设置告警阈值和告警恢复阈值,其中,告警阈值包括上限告警阈值、下限告警阈值,告警恢复阈值包括上限恢复阈值、下限恢复阈值,上限告警阈值大于上限恢复阈值,下限告警阈值小于下限恢复阈值;所采集数据值第一次达到上限告警阈值时,则触发越上限告警,所采集数据值在上限告警阈值附近波动并且不达到上限恢复阈值时,不触发任何告警,所采集数据值第一次达到上限恢复阈值时,触发上限恢复告警;所采集数据值第一次达到下限告警阈值时,则触发越下限告警,所采集数据值在下限告警阈值附近波动并且不达到下限恢复阈值时,不触发任何告警,所采集数据值第一次达到下限恢复阈值时,触发下限恢复告警;步骤1、步骤2均包括缓存,所述缓存包括不指定过期时间的缓存、指定过期时间的缓存,此时需要引入相关概念:定义一:不指定过期时间的缓存,将所有需要缓存的信息保存在一个对象中,格式为{“唯一key”:{“缓存内容”}},通过“唯一key”查询、保存和删除对应的缓存信息;定义二:指定过期时间的缓存,使用时间轮TimingWheel模式,将缓存任务存储在环形队列,底层采用数组实现,数组中的每个元素存放一个定时任务列表TimerTaskList,TimerTaskList是一个环形的双向链表,链表中的每一项都表示定时任务项TimerTaskEntry,其中封装真正的定时任务TimerTask;时间轮包括时间格、表盘指针currentTime,每个时间格代表当前时间轮的基本时间跨度tickMs,时间轮的时间格的个数wheelSize固定,那么整个时间轮的总体时间跨度interval即为tickMs×wheelSize,currentTime是tickMs的整数倍,用于表示时间轮当前所处的时间,currentTime将整个时间轮划分为到期部分和未到期部分,currentTime当前指向的时间格属于到期部分,表示刚好到期,需要处理此时间格所对应的TimerTaskList的所有任务;定义三:时间轮的运行方法如下1假设时间轮的tickMs=1ms,wheelSize=20,那么interval=tickMs×wheelSize=20ms,初始状态下,currentTime指向时间格0;假设此时一个定时为2ms的TimerTask插入进来,则存放到时间格为2的TimerTaskList中;随着时间推移,currentTime不断向前推进,2ms后,即到达时间格2;此时即需对时间格2所对应的TimeTaskList中的TimerTask做相应的到期操作;此时若有另一个定时为8ms的TimerTask插入进来,则存放到时间格为10的TimerTaskList中,currentTime再过8ms后即指向时间格10,此时即需对时间格10所对应的TimeTaskList中的TimerTask做相应的到期操作;如果在定时为8ms的TimerTask插入的同时,有一个定时为19ms的TimerTask插入进来,新插入的TimerTask所在的TimerTaskEntry即复用与定时为8ms的TimerTask相同的TimerTaskList,故其插入位置为原本已经到期的时间格1中;整个时间轮的总体跨度不变,随着currentTime的不断推进,当前时间轮所能处理的时间段也在不断后移,总体时间范围在currentTime和currentTime+interval之间;2为满足时间跨度更大的TimerTask,时间轮可设置多层,设置方法如下:第一层时间轮的tickMs=1ms,wheelSize=20,interval=20ms,每一层时间轮的wheelSize均固定为20,第二层时间轮的tickMs为第一层时间轮的interval,即为20ms,如此第二层时间轮的interval为400ms,以此类推,第三层时间轮的tickMs为第二层时间轮的interval,即为400ms,第三层时间轮的interval为8000ms;假设此时一个定时为350ms的TimerTask插入进来,显然第一层时间轮不能满足条件,故升级至第二层时间轮,最终被插入到第二层时间轮中时间格17所对应的TimerTaskList中;如果此时另有一个定时为450ms的TimerTask插入进来,那么显然第二层时间轮也无法满足条件,故升级至第三层时间轮,最终被插入到第三层时间轮中时间格1所对应的TimerTaskList中,需要说明的是,到期时间在[400ms,800ms区间的任务均被放入第三层时间轮的时间格1对应的TimerTaskList中,时间格1对应的TimerTaskList的超时时间为400ms;随着时间流逝,当次TimerTaskList到期之时,原本定时为450ms的TimerTask还剩50ms的时间,还不能执行该TimerTask的到期操作,此时即涉及到时间轮降级的操作,剩余时间为50ms的TimerTask需重新提交到相应层级的时间轮,此时第一层时间轮的interval不够,而第二层时间轮的interval足够,所以该剩余时间为50ms的TimerTask被放到第二层时间轮到期时间为[40ms,60ms的时间格中,再经历40ms后,该TimerTask最终剩余10ms,仍然不能立即执行到期操作,故再一次进行时间轮的降级,该TimerTask被添加到第一层时间轮到期时间为[10ms,11ms的时间格中,之后再经历10ms后,该TimerTask真正到期,最终执行相应的到期操作;定理:执行特定的TimerTask时,通过“唯一key”在不指定过期时间的缓存中获取对应的缓存信息,如果缓存信息为空,则视为该信息已被删除,不执行内容直接跳过,否则根据缓存信息执行对应操作。

全文数据:

权利要求:

百度查询: 杭州极能科技有限公司 一种设备告警数据防抖方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。