深圳专业制作网站公司吗,建设部网站内装修标准,免费建设个人网站,做网站维护需要学什么一、时序数据库作用、优点
1、作用#xff1a;
时序数据库通常被用在监控场景#xff0c;比如运维和 IOT#xff08;物联网#xff09;领域。这类数据库旨在存储时序数据并实时处理它们。
比如。我们可以写一个程序将服务器上 CPU 的使用情况每隔 10 秒钟向 InfluxDB 中…一、时序数据库作用、优点
1、作用
时序数据库通常被用在监控场景比如运维和 IOT物联网领域。这类数据库旨在存储时序数据并实时处理它们。
比如。我们可以写一个程序将服务器上 CPU 的使用情况每隔 10 秒钟向 InfluxDB 中写入一条数据。接着我们写一个查询语句查询过去 30 秒 CPU 的平均使用情况然后让这个查询语句也每隔 10 秒钟执行一次。最终我们配置一条报警规则如果查询语句的执行结果xxx就立刻触发报警。
上述就是一个指标监控的场景在 IOT 领域中也有大量的指标需要我们监控。比如 机械设备的轴承震动频率农田的湿度温度等等。
2、优点
其实关系型数据库也是支持时间戳的也是可以存储时序数据但是时序数据库与它相比还是有如下优点
写入能力时序数据库大多采用采用LSM Tree 的变种顺序写磁盘来增强数据的写入能力通常时序数据库都会保证在单点每秒数十万的写入能力。而关系型数据库一般采用 B树数据结构在数据写入时有可能会触发叶裂变从而产生了对磁盘的随机读写降低写入速度如果按照主键递增的顺序依次写入那倒还好否则可能影响前面已经存好的数据导致整个树大变动数据压缩时序数据库一般用于指标监控场景。这个场景的数据有一个非常明显的特点就是冷热差别明显。通常指标监控只会使用近期一段时间的数据比如我只查询某个设备最近 10 分钟的记录10 分钟前的数据我就不再用了。那么这 10 分钟前的数据对我们来说就是冷数据应该被压缩放到磁盘里去来节省空间。而热数据因为经常要用数据库就应该让它留在内存里等待查询。而市面上的时序数据库大都有类似的设计。通过此种方法可以大幅度的节省空间为只写不改的场景而设计这种类型的数据大多数情况下都是按时间顺序依次写入但不去修改数据分片存储比如每个小时的数据或者每天的数据会放到一个shard中查询某一天或者某个小时的数据时只查这个shard便可不用全部查询显著的提高查询速度
二、InfluxDB
主要用法
从文件导入数据到InfluxDB使用数据搜集工具如Telegraf将数据搜集到InfluxDB。可以选择要搜集的数据来源比如cpu、nginx、redis、docker等让InfluxDB主动拉取数据。有些服务提供获取自己metrics数据的接口如nacos这时只需在InfluxDB中配置相应接口便可拉取到对应数据利用程序比如java程序调用InfluxDB提供的api接口便可将数据上传到InfluxDB中需要token
详情见https://blog.csdn.net/qq_44766883/article/details/131511821
三、TimeScaleDB
TimescaleDB是一种用于处理时间序列数据的开源时序数据库它是PostgreSQL的扩展。它可以处理大量的时间序列数据并且支持SQL查询和连续聚合功能如果之前系统已经使用了PostgreSQL那么可以优先考虑TimeScaleDB
详情见https://blog.csdn.net/shaopengjie2/article/details/130480459