首页 > 其他分享 >Prometheus TSDB概念介绍

Prometheus TSDB概念介绍

时间:2024-05-13 11:51:55浏览次数:15  
标签:status WAL series prometheus value sample 概念 Prometheus TSDB

Prometheus TSDB概念介绍

序言

为了让新入门的学习者更好地学习后续的文章,本文会针对prometheus中的一些概念进行简要介绍

基本概念

metric name:指标名称,对于监控数据而言,每一个监控数据都需要有一个指标名称,如监控一个服务接收到的http请求数,那么metric name一般设置为http_request_counts

label-value pair: 在这里,我们以服务的http请求数举例,每个请求可能都有一些自己的属性,比如请求状态status,它的值为200或500,那么我们就可以得到status="200"status="500"这样的label-value pair

label-value pair list: prometheus是一个多维的监控系统,意味着每个请求可以有多个属性,以上述的场景举例,单个请求可能请求到了不同地域的服务,那么我们就会有这样的label-value pair list:{region="shanghai",status="500"},{region="shanghai",status="200"}

series: prometheus使用metric name+label-value pair list来标识一个series,即http_request_count{region="shanghai",status="200"}就是一个series

sample: 每个上报给prometheus的监控都是一个sample,sample由series+value+timestamp组成,即http_request_count{{region="shanghai",status="200"} value timestamp

chunk: sample的集合体,存储多个sample,由series+samplelist+mint+maxt组成,maxtmint是chunk中所有sample中的最大时间和最小时间。一个chunk中的数据全部归属于一个series

Head Block: 与大部分数据库类似,prometheus TSDB也是由内存部分和磁盘部分组成,Head Block属于内存部分,其中会存储最近2个小时内的sample对应的chunk,以及对series,chunk等数据的索引。

WAL: 与大部分数据库类似,为了实现持久性,prometheus TSDB中也需要WAL,指的是在真实写入数据之前,需要先写入一份日志记录并落盘。

checkpoint: 在WAL增长到一定程度的时候,会占据大量的磁盘空间,并且WAL中的日志记录会在真实数据落盘之后不再需要,因此会对WAL中的数据进行定期清理,清理的WAL中可能有部分真实数据还未落盘,未落盘的这部分数据会作为checkpoint进行存储

persistent block: 这部分是TSDB的磁盘部分,指已落盘的真实数据

标签:status,WAL,series,prometheus,value,sample,概念,Prometheus,TSDB
From: https://www.cnblogs.com/hei12138/p/18188947

相关文章

  • 部署Prometheus Operator完整流程及踩坑解决思路
    环境信息软件版本号LinuxCentos7.9k8sv1.26.9Docker25.0.4kube-prometheusv0.13.0nginx-ingress-controllerv1.10.1K8S集群信息(提前安装好自己的集群,本文不再讲解集群的安装)主机名IPk8s-master192.168.2.11k8s-node01192.168.2.1......
  • 1.1数据结构基本概念
    1.1数据结构基本概念什么是数据?数据是信息的载体,是描述客观事务属性的数、字符及所有能输入到计算机中并被计算机程序识别和处理的符号的集合(二进制0和1)。数据事计算机程序加工的原料。数据元素、数据项数据元素是数据的基本单位,通常作为一个整体进行考虑和处理。一个数据元......
  • 1.2.1算法基本概念
    1.2.1算法基本概念什么是算法?程序=数据结构+算法数据结构:如何用数据正确地描述现实世界的问题,并存入计算机算法:如何高效地处理这些数据,以解决实际问题算法是对特定问题求解步骤的一种描述,他是指令的有限序列,其中的每条指令表示一个或多个操作算法是求解问题的步骤算法......
  • prometheus+grafana 监控mysql数据库
    一:安装插件1.1下载mysqld_exportermysqld_exporter是一个用于监控MySQL服务器的开源工具,它是由Prometheus社区维护的一个官方Exporter。该工具通过连接到MySQL服务器并执行各种查询来收集关于MySQL服务器性能和状态的指标,并将这些指标暴露给Prometheus监控系统。在ht......
  • 图机器学习入门:基本概念介绍
    图机器学习(GraphMachineLearning,简称GraphML)是机器学习的一个分支,专注于利用图形结构的数据。在图形结构中,数据以图的形式表示,其中的节点(或顶点)表示实体,边(或链接)表示实体之间的关系。本篇文章将从基础开始介绍什么是图,我们如何描述和表示它们,以及它们的属性是什么。图论是在1......
  • Prometheus 监控平台组件深度讲解
    Prometheus的重要性和流行度已经无需多言。直入主题,本文对Prometheus监控平台的各个组件做深度讲解,希望能帮助读者更好地理解Prometheus。监控系统的核心逻辑对于一套监控系统而言,核心就是采集数据并存储,然后做告警判定、数据展示分析,这个 专栏文章 详细讲解了这个数据流......
  • 2-工作流程_基本概念
    2.工作流程&基本概念动作命令文件位置文件状态新建文件工作目录未被追踪推送至暂存区git add暂存区暂存提交版本git commit本地仓库未被修改修改文件工作目录未被追踪工作区:就是你在电脑里能看到的目录暂存区:.git/index文件中,暂存区有时......
  • 1-Prometheus基本概念与部署
    工作流程总结1.Prometheus服务器周期性地或在设定的时间段内,通过以下方式获取内容:从已经配置好的job或者exporter中拉取metric(指标)接收从Pushgateway推送过来的metric从其他的Prometheus服务器中拉取metric2.Prometheus服务器获取到数据后存储在本地(也可以选择远端存储),通过......
  • prometheus JVM监控
     prometheusJVM监控为了使用Prometheus监控JVM,你需要一个能够采集JVM指标的工具,比如jmx_exporter。以下是如何设置jmx_exporter以监控JVM的步骤:下载并运行jmx_exporter:bashwget"https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.16.1/jmx_......
  • 已经有 Prometheus 了,还需要夜莺?
    谈起当下监控,Prometheus无疑是最火的项目,如果只是监控机器、网络设备,Zabbix尚可一战,如果既要监控设备又要监控应用程序、Kubernetes等基础设施,Prometheus就是最佳选择。甚至有些开源项目,已经内置支持了Prometheus协议的指标暴露,比如新版本的Zookeeper、新版本的RabbitMQ、......