influxDB在docker容器中的简单使用

1.拉取官方的镜像
[root@localhost /]# docker pull influxdb
2.启动
`[root@localhost /]# docker run -d -p8083:8083 -p8086:8086 --expose 8090 --expose 8099 --name influxDbService influxdb

-d:deamon,后台启动
-p:port, 端口映射,宿主机端口:容器内端口;8083是influxdb的web管理工具端口,8086是influxdb的HTTP API端口
                8083: Web admin管理服务的端口, http://localhost:8083
                8086: HTTP API的端口
                8088: 集群端口(目前还不是很清楚, 配置在全局的bind-address,默认不配置就是开启的)
--expose:允许容器接受外部传入的数据
--name:容器名称,此处为influxDbService
influxdb:镜像名`

3.进入容器内部
[root@localhost /]# docker exec -it influxDbService bash
3.1 相关操作
查询表
show measurements

4.简介:InfluxDB 是 Go 语言开发的一个开源分布式时序数据库,非常适合存储指标、事件、分析等数据(同类型的数据库还有:OpenTSDB、KairosDB、MonnetDB、druid);collectd 是C 语言写的一个系统性能采集工具;Grafana 是纯 Javascript 开发的前端工具,用于访问 InfluxDB,自定义报表、显示图表等。三者结合是这样的:采集数据(collectd)-> 存储数据(InfluxDB) -> 显示数据(Grafana)。

influxdb与传统数据库的比较
库、表等比较:

influxDB 传统数据库中的概念
database 数据库
measurement 表里面的一行数据
points 数据库中的表

influxdb数据的构成:

Point由时间戳(time)、数据(field)、标签(tags)组成。

Point属性 传统数据库中的概念
time 每个数据记录时间,是数据库中的主索引(会自动生成)
fields 各种记录值(没有索引的属性)也就是记录的值:温度, 湿度
tags 各种有索引的属性:地区,海拔
这里不得不提另一个名词:series:

所有在数据库中的数据,都需要通过图表来展示,而这个series表示这个表里面的数据,可以在图表上画成几条线:通过tags排列组合算出来。具体可以通过SHOW SERIES FROM "表名" 进行查询。

posted @ 2021-11-09 11:28  Elon-Yan  阅读(1892)  评论(0编辑  收藏  举报