栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

VictoriaMetrics时序数据库调研

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

VictoriaMetrics时序数据库调研

一、什么是时序数据

二、 VictoriaMetrics的优点
  1. prometheus(默认保留15天)是基于prometheus长期存储的一种方案

  2. 基于PromQL的查询语言,即MetricsQL,并且在PromQL基础上做了改进

  3. 安装简单:单节点架构一条命令就可以部署完毕(集群方式稍微复杂一些,但也很好理解)

  4. 兼容性:PromQL兼容和增强的MetricsQL

  5. Grafana兼容:VM可替换Grafana的Prometheus数据源(经测试,线上数据源直接替换后100%兼容)

  6. 低内存:更低的内存占用,官方对比Prometheus,可以释放7倍左右内存空间(线上对比大概4倍)

  7. 高压缩比:提供存储数据高压缩,官方说可以比Prometheus减少7倍的存储空间(线上对比大概是4~5倍)

  8. 高性能:查询性能比Prometheus更快

  9. 支持水平扩容&HA:基于VM集群版实现

  10. 支持多租户:主要针对集群版本

三、VM的部署架构与HA

  • 副本、分片、及HA
    • 副本
      • vminsert:按算法为固定时间序列选择后端存储(分片) 和 控制副本数量(副本)replicationFactor,开启副本,并控制副本数量,既 要往多少个vmstorage插入同一份样本数据
      • vmstorage:数据存储,vmstorage节点间不进行任何交互,都是独立的个体,只靠上层的vminsert,产生副本和分片dedup.minScrapeInterval,vmagent会产生replicationFactor份冗余数据,需要此参数,来去除重复数据
      • vmselect:数据汇总以及返回,当vminsert开启副本后,vmselect必须设置dedup.minScrapeInterval dedup.minScrapeInterval,去除指定时间的重复数据
      • 注意:副本的开启和修改副本数可能会造成数据的部分丢失,如何避免?
    • 分片
      • 如果vminsert后面存在多个vmstorage,vminsert就会对数据进行分片(或者说打散),vminsert主要通过一致性哈希选择vmstorage节点
    • 扩容方案
      • 查询速度过慢:vmselect为无态服务,配置信息都一样,直接扩容,即可解决此问题。
      • 数据录入慢:vminsert和vmselect一样,直接扩容即可。
      • 容量不足:vmstorage水平扩容来解决此问题,因为vmstorage是有态服务,扩容要配合上游组件服务一起。vmstorage各节点配置一样,直接扩容即可。同时需要把上游的vmselect和vminsert的存储列表(-storageNode)进行更新,然后全部重启。
      • 抓取样本量过大:扩容vmagent即可,但需要重新分配所有vmagent对target的分组参数,-promscrape.cluster.membersCount=N 增加总分组数,-promscrape.cluster.memberNum=(0~N-1) 当前vmagent节点所在分组号,修改完后重启所有vmagent。
四、数据写入与查询
  1. 原生格式导入https://blog.csdn.net/forrest420/article/details/120846242
  2. VM-UI访问地址:http://10.0.2.51:8481/select/accountId:projectId/vmui/
  3. 写入验证
  4.  

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/919168.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号