数据读取方法及装置、电子设备和存储介质制造方法及图纸

技术编号:34844029 阅读:15 留言:0更新日期:2022-09-08 07:41
本公开涉及一种数据读取方法及装置、电子设备和存储介质,所述方法包括:响应于接收到针对告警数据的数据获取请求,获取数据获取请求中的告警列表,告警列表用于指示待获取的告警数据;根据告警列表,查询分布式缓存中是否存在告警数据,得到查询结果;根据查询结果,获取告警数据,并向数据获取请求的发送端返回获取到的告警数据。本公开实施例可实现提高数据读取效率。读取效率。读取效率。

【技术实现步骤摘要】
数据读取方法及装置、电子设备和存储介质


[0001]本公开涉及计算机
,尤其涉及一种数据读取方法及装置、电子设备和存储介质。

技术介绍

[0002]在大量告警数据的查询场景中,通常伴随着多次访问数据库的情况,大量的访问请求会使得数据库的响应时间的增加,影响读取效率。

技术实现思路

[0003]本公开提出了一种数据读取技术方案。
[0004]根据本公开的一方面,提供了一种数据读取方法,包括:响应于接收到针对告警数据的数据获取请求,获取所述数据获取请求中的告警列表,所述告警列表用于指示待获取的告警数据;根据所述告警列表,查询分布式缓存中是否存在所述告警数据,得到查询结果;根据所述查询结果,获取所述告警数据,并向所述数据获取请求的发送端返回获取到的告警数据。
[0005]在一种可能的实现方式中,所述根据所述查询结果,获取所述告警数据,包括:在所述查询结果指示所述分布式缓存中存在所述告警数据的情况下,从所述分布式缓存中读取所述告警数据。
[0006]在一种可能的实现方式中,所述根据所述查询结果,获取所述告警数据,包括:在所述查询结果指示所述分布式缓存中不存在所述告警数据的情况下,根据所述告警列表,从数据库中批量读取所述告警数据,并为所述告警数据设置分布式缓存。
[0007]在一种可能的实现方式中,所述向所述数据获取请求的发送端返回获取到的告警数据,包括:根据获取的所述告警数据,确定告警检测任务对目标视频的检测结果,所述告警检测任务用于检测所述目标视频中发生的告警事件;在所述检测结果指示所述目标视频中的告警事件未结束的情况下,向所述数据获取请求的发送端返回从数据库中批量读取的告警数据。
[0008]在一种可能的实现方式中,在获取到所述告警检测任务对目标视频的检测结果之后,所述向所述数据获取请求的发送端返回获取到的告警数据,还包括:在所述检测结果指示所述目标视频中的告警事件已结束的情况下,判断本地缓存中是否存在所述告警事件对应的状态信息;在所述本地缓存中存在所述状态信息的情况下,向所述数据获取请求的发送端返回从数据库中批量读取的告警数据;其中,所述状态信息包括所述告警检测任务的任务状态信息与所述告警事件的告警状态信息中的至少一种,所述任务状态信息表征所述告警检测任务是否结束,所述告警状态信息表征所述告警事件是否结束。
[0009]在一种可能的实现方式中,在判断本地缓存中是否存在所述告警事件对应的状态信息之后,所述向所述数据获取请求的发送端返回获取到的告警数据,还包括:在所述本地缓存中不存在所述状态信息的情况下,为所述状态信息设置本地缓存,并向所述数据获取
请求的发送端返回从数据库中批量读取的告警数据;根据所述告警检测任务的检测结果,执行异步更新任务,所述异步更新任务包括与为所述状态信息设置本地缓存的任务异步,和/或,与向所述数据获取请求的发送端返回从数据库中批量读取的告警数据的任务异步的更新任务;以及,所述异步更新任务包括:异步更新数据库中的任务状态信息、异步更新数据库中的告警状态信息以及异步更新所述分布式缓存中的告警数据中的至少一种。
[0010]在一种可能的实现方式中,所述根据所述告警检测任务的检测结果,执行异步更新任务,包括:利用线程池,为所述异步更新任务分别分配处理线程;利用所述处理线程,根据所述告警检测任务的检测结果,执行所述异步更新任务。
[0011]根据本公开的一方面,提供了一种数据读取装置,包括:获取模块,用于响应于接收到针对告警数据的数据获取请求,获取所述数据获取请求中的告警列表,所述告警列表用于指示待获取的告警数据;查询模块,用于根据所述告警列表,查询分布式缓存中是否存在所述告警数据,得到查询结果;返回模块,用于根据所述查询结果,获取所述告警数据,并向所述数据获取请求的发送端返回获取到的告警数据。
[0012]在一种可能的实现方式中,所述返回模块,包括:读取子模块,用于在所述查询结果指示所述分布式缓存中存在所述告警数据的情况下,从所述分布式缓存中读取所述告警数据。
[0013]在一种可能的实现方式中,所述返回模块,包括:批量读取子模块,用于在所述查询结果指示所述分布式缓存中不存在所述告警数据的情况下,根据所述告警列表,从数据库中批量读取所述告警数据,并为所述告警数据设置分布式缓存。
[0014]在一种可能的实现方式中,所述返回模块,包括:检测结果确定子模块,用于根据获取的所述告警数据,确定告警检测任务对目标视频的检测结果,所述告警检测任务用于检测所述目标视频中发生的告警事件;返回子模块,用于在所述检测结果指示所述目标视频中的告警事件未结束的情况下,向所述数据获取请求的发送端返回从数据库中批量读取的告警数据。
[0015]在一种可能的实现方式中,在获取到所述告警检测任务对目标视频的检测结果之后,所述返回模块,还包括:判断子模块,用于在所述检测结果指示所述目标视频中的告警事件已结束的情况下,判断本地缓存中是否存在所述告警事件对应的状态信息;批量返回子模块,用于在所述本地缓存中存在所述状态信息的情况下,向所述数据获取请求的发送端返回从数据库中批量读取的告警数据;其中,所述状态信息包括所述告警检测任务的任务状态信息与所述告警事件的告警状态信息中的至少一种,所述任务状态信息表征所述告警检测任务是否结束,所述告警状态信息表征所述告警事件是否结束。
[0016]在一种可能的实现方式中,在判断本地缓存中是否存在所述告警事件对应的状态信息之后,所述返回模块,还包括:缓存设置子模块,用于在所述本地缓存中不存在所述状态信息的情况下,为所述状态信息设置本地缓存,并向所述数据获取请求的发送端返回从数据库中批量读取的告警数据;任务执行子模块,用于根据所述告警检测任务的检测结果,执行异步更新任务,所述异步更新任务包括与为所述状态信息设置本地缓存的任务异步,和/或,与向所述数据获取请求的发送端返回从数据库中批量读取的告警数据的任务异步的更新任务;以及,所述异步更新任务包括:异步更新数据库中的任务状态信息、异步更新数据库中的告警状态信息以及异步更新所述分布式缓存中的告警数据中的至少一种。
[0017]在一种可能的实现方式中,所述根据所述告警检测任务的检测结果,执行异步更新任务,包括:利用线程池,为所述异步更新任务分别分配处理线程;利用所述处理线程,根据所述告警检测任务的检测结果,执行所述异步更新任务。
[0018]根据本公开的一方面,提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。
[0019]根据本公开的一方面,提供了一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。
[0020]在本公开实施例中,在获取到数据获取请求中的告警列表后,通过先查询分布式缓存中是否存在告警数据,并依据查询结果来获取告警数据,可以减少访问数据库的次数,提高数据读取效率。
[0021]应当理解的是本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据读取方法,其特征在于,包括:响应于接收到针对告警数据的数据获取请求,获取所述数据获取请求中的告警列表,所述告警列表用于指示待获取的告警数据;根据所述告警列表,查询分布式缓存中是否存在所述告警数据,得到查询结果;根据所述查询结果,获取所述告警数据,并向所述数据获取请求的发送端返回获取到的告警数据。2.根据权利要求1所述的方法,其特征在于,所述根据所述查询结果,获取所述告警数据,包括:在所述查询结果指示所述分布式缓存中存在所述告警数据的情况下,从所述分布式缓存中读取所述告警数据。3.根据权利要求1所述的方法,其特征在于,所述根据所述查询结果,获取所述告警数据,包括:在所述查询结果指示所述分布式缓存中不存在所述告警数据的情况下,根据所述告警列表,从数据库中批量读取所述告警数据,并为所述告警数据设置分布式缓存。4.根据权利要求1至3任一项所述的方法,其特征在于,所述向所述数据获取请求的发送端返回获取到的告警数据,包括:根据获取的所述告警数据,确定告警检测任务对目标视频的检测结果,所述告警检测任务用于检测所述目标视频中发生的告警事件;在所述检测结果指示所述目标视频中的告警事件未结束的情况下,向所述数据获取请求的发送端返回从数据库中批量读取的告警数据。5.根据权利要求4所述的方法,其特征在于,在获取到所述告警检测任务对目标视频的检测结果之后,所述向所述数据获取请求的发送端返回获取到的告警数据,还包括:在所述检测结果指示所述目标视频中的告警事件已结束的情况下,判断本地缓存中是否存在所述告警事件对应的状态信息;在所述本地缓存中存在所述状态信息的情况下,向所述数据获取请求的发送端返回从数据库中批量读取的告警数据;其中,所述状态信息包括所述告警检测任务的任务状态信息与所述告警事件的告警状态信息中的至少一种,所述任务状态信息表征所述告警检测任务是否结束,所述告警状...

【专利技术属性】
技术研发人员:王朋飞
申请(专利权)人:深圳市商汤科技有限公司
类型:发明
国别省市:

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

1