Spring Boot中使用时序数据库InfluxDB

Spring Boot中使用时序数据库InfluxDB,第1张

除了最常用的关系数据和缓存之外,之前我们已经介绍了在Spring Boot中如何配置和使用 MongoDB LDAP 这些存储的案例。接下来,我们继续介绍另一种特殊的数据库:时序数据库InfluxDB在Spring Boot中的使用。

什么是时序数据库?全称为时间序列数据库。时间序列数据库主要用于指处理带时间标签(按照时间的顺序变化,即时间序列化)的数据,带时间标签的数据也称为时间序列数据。时间序列数据主要由电力行业、化工行业等各类型实时监测、检查与分析设备所采集、产生的数据,这些工业数据的典型特点是:产生频率快(每一个监测点一秒钟内可产生多条数据)、严重依赖于采集时间(每一条数据均要求对应唯一的时间)、测点多信息量大(常规的实时监测系统均有成千上万的监测点,监测点每秒钟都产生数据,每天产生几十GB的数据量)。虽然关系型数据库也可以存储基于时间序列的数据,但由于存储结构上的劣势,使得这些数据无法高效地实现高频存储和查询统计,因此就诞生了一种专门针对时间序列来做存储和优化的数据库,以满足更高的效率要求。(参考:百度百科:时序数据库>

可以调用的,因为你的dao层都是用spring来创建的,

你new出来的,自然不会被spring注入进去,所以是null,

你需要在你的定时器声明一个static的dao,然后用spring注入进去,

当然你也可以直接从spring 容器中获取这个dao的实现

有时候缓存的数据量非常大,如果这个时候服务宕机了,且开启了redis的持久化功能,重新启动服务,数据基本上不会丢。redis可以做内存共享,因为它可以被多个不同的客户端连接。做为mysql等数据库的缓存,是把部分热点数据先存储到redis中,或第一次用的时候加载到redis中,下次再用的时候,直接从redis中取。

你可以只用一个定时任务,每次取一个,然后进行处理,你也可以顺序得进行,也可以多线程,但是取过的记录最好在数据库上打个标记来区别。

还有种就是取一个列表,然后全插到一个队列里,另一线程就是用队列的阻塞原理来取对象来处理,没有就会阻塞在那里,同样建议你每次给取到的和处理掉的数据都打个标记(如果你是删除的就不说了)

以上就是关于Spring Boot中使用时序数据库InfluxDB全部的内容,包括:Spring Boot中使用时序数据库InfluxDB、springboot+quartz持久化到数据库各表含义、java定时器,能否调spring+iBATIS的服务对数据库进行 *** 作等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9749565.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存