时序数据库-InfluxDB

一、介绍

InfluxDB是一种时序数据库,时序数据库全程时间序列数据库(Time Series Database,TSDB,用于存储大量基于时间的数据,时序数据(Time Series Data)指的是一系列基于时间的数据,为处理和分析带有时间戳的数据而设计。由InfluxData公司开发,并使用Go语言编写,目标在提供高性能的数据写入与查询能力。

特点

  • 对时序数据(sereis data)使用TSM存储引擎,提供高性能的数据写入和压缩功能;
  • go语言编写,程序只有一个二进制的可执行文件,没有其他依赖关系;
  • 插件支持telegraf采集、granfa可视化;
  • 提供类似SQL语法格式的数据操作;
  • 无结构(无模式):可以是任意数量的列
  • 支持与时间有关的相关函数(如最大,最小,求和等);
  • 保留策略(retention policies)功能可以定期清除老旧数据;
  • 连续查询(continuous queries) 功能统计聚合数据来使数据查询更有效率

概念

  1. database:数据库名,可以创建多个数据库,不同数据库中的数据文件是隔离存放的,存放在磁盘上的不同目录
  2. measurement:测量指标名,相当于数据库中的表
  3. point:相当于传统数据库里的一行数据,由时间戳(time)、数据(field)、标签(tags)组成。
  4. tag:标签,相当于传统数据库的索引,表名+tag一起作为数据库的索引。
  5. field:各种记录值(没有索引的属性)。
  6. time:每条数据记录时间,是数据库中的主索引(会自动生成)。
  7. series:相当于是 InfluxDB 中一些数据的集合,在同一个 database 中,retention policy、measurement、tag sets 完全相同的数据同属于一个 series,同一个 series 的数据在物理上会按照时间顺序排列存储在一起。
  8. retention policy:保留策略,用于设置数据保留的时间,每个数据库刚开始会自动创建一个默认的存储策略 autogen,数据保留时间为永久,之后用户可以自己设置,例如保留最近2小时的数据。InfluxDB 会定期清除过期的数据。
  9. shard:分区,是InfluxDB存储引擎的实现,负责数据的编码存储、读写服务等。将InfluxDB中时间序列化的数据按照时间的先后顺序存入到shard中,每个shard中都负责InfluxDB中一部分的数据存储工作,并以tsm文件的表现形式存储在物理磁盘上,每个存放了数据的shard都属于一个shard group。
  10. shard group:可以理解为存放shard的容器,所有的shard在逻辑上都属于这个shard group,每个shard group中的shard都有一个对应的时间跨度和过期时间,每一个shard group都有一个默认的时间跨度,叫做shard group duration,默认为7天。

二、下载与安装

1. 下载

下载地址:windows版 https://docs.influxdata.com/influxdb/v2/install/?t=Windows
image

2. 安装。

  • 下载完成后解压,cmd进入该目录输入influxd.exe。浏览器进入127.0.0.1:8086打开界面表明启动成功,8086是influxdb的默认端口。
  • 配置。在influxd.exe同级目录创建config.yaml文件,添加以下参数。其他参数设置参考:https://docs.influxdata.com/influxdb/v2/reference/config-options/。
    设置完后重新启动 influxd.exe 会自动按照配置文件配置启动。
#BoltDB 数据库文件的存储路径
bolt-path: "./data/influxd.bolt"
#influxdb存储位置
engine-path: "./data/engine"
#端口
http-bind-address: ":8086"
#数据保留期 默认30天
storage-retention-period: 30d

3. 部署成服务

  • 在nssm.exe目录下进入cmd输入nssm install回车。
  • Path选择influxd.exe路径。Startup Dictionary自动填充
  • Service name自定义填写
  • 点击Install service。提示成功表明服务安装成功,进入服务找到自定义的服务名称右键启动。浏览器进入对应网页表明部署成功
    image

4. 初始化

浏览器进入127.0.0.1:8086,点击 GET STARTED进入用户创建界面。
image

填写初始用户信息后点击CONTINUE。
image

点击QUICK START
image

主页
image

posted @ 2025-11-01 10:40  LLj-511  阅读(25)  评论(0)    收藏  举报