InfluxDB如何利用底层密钥值存储?

时间:2018-02-18 21:26:34

标签: influxdb key-value-store

我正在对InfluxDB进行一些研究,发现它使用底层的Key-Value存储进行存储(如LevelDB,RocksDB等)。

我想要一个心智模型,说明为存储时间序列数据创建了哪种密钥。

我正在猜测"开始时间戳 - >价值清单......"但想要更准确地解释一下。

1 个答案:

答案 0 :(得分:1)

InfluxDB的工作方式略有不同。

  

InfluxDB数据库存储点。点有四个组件:度量,标记集,字段集和时间戳。

     

测量提供了一种关联可能具有不同标记集或字段集的相关点的方法。标记集是键值对的字典,用于存储带点的元数据。字段集是一组键入的标量值 - 由点记录的数据。

     

点的序列化格式由[行协议]定义(如果您想了解更多详细信息,则包括其他示例和说明)。规范中的一个示例点有助于解释术语:

temperature,machine=unit42,type=assembly internal=32,external=100 1434055562000000035

  

测量是温度。

     

标签集是machine = unit42,type = assembly。标记集中的键,机器和类型称为标记键。标记集中的值unit42和assembly称为标记值。

     

fieldset是internal = 32,external = 100。字段集中的内部和外部键称为字段键。字段集中的值32和100称为字段值。

您可以查看此帖子以获取内部的完整说明。 https://www.influxdata.com/blog/influxdb-internals-101-part-one/