文档首页 > > 用户指南> 集群模式> 使用OpenTSDB>

OpenTSDB概述

OpenTSDB概述

分享
更新时间:2020/11/06 GMT+08:00

OpenTSDB是基于HBase的分布式、可伸缩的时间序列数据库。它存储的是时间序列数据,时间序列数据是指在不同时间点上收集到的数据,这类数据反映了一个对象随时间的变化状态或程度。

OpenTSDB架构

OpenTSDB由时间序列守护进程(TSD)和一组命令行实用程序组成。与OpenTSDB的交互主要通过运行一个或多个TSD来实现。每个TSD都是独立的。没有主服务器,没有共享状态,因此您可以根据需要运行任意数量的TSD来处理您向其投入的任何负载。每个TSD使用CloudTable集群中的HBase来存储和检索时间序列数据。数据模式经过高度优化,可快速聚合相似的时间序列,从而最大限度地减少存储空间。TSD的用户不需要直接访问底层存储。您可以通过HTTP API与TSD进行通信。所有通信都发生在同一个端口上(TSD通过查看它收到的前几个字节来确定客户端的协议)。

图1 OpenTSDB架构

基本概念

  • data point:时间序列数据点,包括metric、timestamp、value和tag。表示某个metric在某个时间点的数值。
  • metric:指标项。例如,在系统监控中的CPU使用率、内存、IO等指标。
  • timestamp:UNIX时间戳(自Epoch以来的秒或毫秒),即value产生的时间。
  • value:某个metric的值,是JSON格式的事件或直方图/摘要。
  • tag:标签,是由Tagk和Tagv组成的键值对。用于描述该点所属的时间序列。

    标签允许您从不同的源或相关实体中分离出类似的数据点,因此您可以轻松地单独或成组地绘制它们。标签的一个常见用法是使用生成数据点的机器名称以及机器所属的集群或池的名称来注释数据点。这使您可以轻松地制作显示每个服务器的服务状态的仪表盘,以及显示跨逻辑服务器池的聚合状态的仪表盘。

OpenTSDB系统表简介

OpenTSDB是基于HBase存储时序列数据的,在集群中开启OpenTSDB后,系统会在集群中创建4张HBase表。OpenTSDB系统表如表1所示。

请不要人为去修改这4张HBase表,因为这可能会导致OpenTSDB不可用。

表1 OpenTSDB系统表

表名

说明

OPENTSDB.DATA

用于存储数据点,OpenTSDB的所有数据都存储在这个表中。OpenTSDB按照salt进行分区,默认20个region,暂不支持设置。

OPENTSDB.UID

用于存储UID映射,数据点中的每个metric,tag都会映射成UID,同时每个UID反向映射为metric,tag,这些映射关系存储在这个表中。

OPENTSDB.TREE

用于存储metric的结构信息,默认未开启该特性。

OPENTSDB.META

用于存储时间序列索引和元数据,默认未开启该特性。

分享:

    相关文档

    相关产品