一分钟 Get 时序数据库 InfluxDB 的技能

1.

通过上期分享《实践指路明灯,源码剖析flink-metrics》,对当下较火的流式处理框架 flink 的指标监控体系有了全局的认识,并结合 flink-metrics-xxxx 模块进行深入分析,对 flink 是如何集成监控轮子了如之掌。

不过,源码中的 flink-metrics-influxdb 模块,你是否留意到?按照设计规范,不用多想,那肯定是 flink 指标监控对 influxdb 的集成。

那么,influxdb ?influxdb 是啥?influxdb 你用过吗?

今天稍微花一分钟,带你 Get 这门技能,放心不会伤脑。

(图看不清放大了去看)

2.

去说 InfluxDB 之前,先聊聊,什么是时间序列数据(时序数据)?

时间序列数据就是在不同时间上收集到的数据,主要有两个关键指标:监测时间和监测数值。生活中常见的时间序列数据,包括股票价格、网站的 PV/UV、服务器系统监控数据(比如 CPU 和内存占用率)等等。

那时间序列数据应该存到哪儿?时间序列数据库(TSDB)是啥?

A time series database (TSDB) is a software system that is optimized for storing and serving time series through associated pairs of time(s) and value(s)

https://en.wikipedia.org/wiki/Time_series_database

简单去理解,时间序列数据可以存储到 TSDB 中,因为 TSDB 是用于存储和分析时间序列数据的数据库。

如图所示,在 DB-ENGINES 给出的最新的时间序列数据库的排名中,InfluxDB 高居第一位,而脸熟的 Prometheus、Graphite 等也位居其中,下面就以 InfluxDB 作为突破口进行体验。

3.

3.1 磨刀霍霍。

首先,选择您最中意的版本进行下载。

https://portal.influxdata.com/downloads/

本次以 v1.7.10 的 Mac 系统版本进行安装。

https://dl.influxdata.com/influxdb/releases/influxdb-1.7.10_darwin_amd64.tar.gz

下载解压后的目录全局概览,不同安装方式会不同,但是着重关注 usr/bin/ 目录,后续操作的命令全在这里啦。

然后,按照安装手册进行配置,若是为了体验,默认配置也够用啦。

https://docs.influxdata.com/influxdb/v1.7/introduction/installation/

3.2 披荆斩棘。

下载安装已经完成,执行 ./influxd 命令启动 InfluxDB。

一顿命令操作猛如虎,熟练工种。

熟练工种,命令多练就是啦,感受一下与传统数据库有啥不同?

另外,InfluxDB 也提供了 HTTP API 方式操作。

简单整理了一下,/ping 可以获取 InfluxDB 实例信息以及健康状况;/write 提供插入数据的功能;/query 提供查询数据的功能。

InfluxDB 提供 API 要比这多,用到之时再深入也未尝不可。

3.3 拨云见日

InfluxDB 与传统数据库有啥不同呢?

如图示意,InfluxDB 中的 measurement 类似于传统数据库中的表,包含了列 time、tags 和 fields。

tag key/value 类似于传统数据库里索引的列;

field key/value 类似于传统数据库里没有索引的列;

time 存着时间戳,类似于传统数据库的主键。

另外,有没有什么轮子,可以更好的展示 InfluxDB 中的数据呢?

InfluxDB 位居 DB-ENGINES 排名首榜,对应的展示数据的轮子还是很多的,例如官方的 Chronograf,以及提及多次的 Grafana 等等。

闲暇之余,可以参考官方文档去深入。

https://docs.influxdata.com/influxdb/v1.7/introduction/getting-started/

4.

InfluxDB 本次就说到这里,希望你们能有所获。

下期,我们将结合源码,去看看别人都是怎么用 InfluxDB 的?并尝试把 InfluxDB、Grafana 这些轮子组装到一起,看看组装之后的车子能否跑起来,敬请期待。

原文地址:https://www.cnblogs.com/socoool/p/12629726.html

时间: 2024-10-29 11:58:29

一分钟 Get 时序数据库 InfluxDB 的技能的相关文章

时序数据库InfluxDB(I)- 搭建与采集信息demo操作

搭建环境:vmware workstation pro15.5.0, ubuntu18.04.3 实践时间:2019.10.12-10.27 (一)时序数据库InfluxDB准备 (1)安装 曾出现问题: 解决方法为: (2)配置文件的位置: 可进行InfluxDB缓存大小等参数的设置. (3)服务器端启动: 以后台运行的方式启动了InfluxDB的服务端. (4)客户端启动:登入InfluxDB服务器 将路径加入环境变量中,方便任意地方使用InfluxDB: Or: 特别提醒data和WAL的

[Go] 时序数据库influxdb的安装

日志类的数据时候存储在时序数据库中,下面就是时序数据库influxdb的安装 curl -sL https://repos.influxdata.com/influxdb.key | apt-key add -source /etc/lsb-releaseecho "deb https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | tee /etc/apt/sources.list.d/infl

时序数据库InfluxDB使用详解

InfluxDB是一个开源的时序数据库,使用GO语言开发,特别适合用于处理和分析资源监控数据这种时序相关数据.而InfluxDB自带的各种特殊函数如求标准差,随机取样数据,统计数据变化比等,使数据统计和实时分析变得十分方便.在我们的容器资源监控系统中,就采用了InfluxDB存储cadvisor的监控数据.本文对InfluxDB的基本概念和一些特色功能做一个详细介绍,内容主要是翻译整理自官网文档,如有错漏,请指正. 来源:https://www.jianshu.com/p/a1344ca86e9

时序数据库InfluxDB

一.什么是InfluxDB? InfluxDB是一款用Go语言编写的开源分布式时序.事件和指标数据库,无需外部依赖.该数据库现在主要用于存储涉及大量的时间戳数据,如DevOps监控数据,APP metrics, loT传感器数据和实时分析数据. InfluxDB特征: – 无结构(无模式):可以是任意数量的列(tags). – 可以设置metric的保存时间. – 支持与时间有关的相关函数(如min.max.sum.count.mean.median等),方便统计. – 支持存储策略:可以用于数

互联网级监控系统必备-时序数据库之Influxdb技术

时间序列数据库,简称时序数据库,Time Series Database,一个全新的领域,最大的特点就是每个条数据都带有Time列. 时序数据库到底能用到什么业务场景,答案是:监控系统. Baidu一下,互联网监控系统,大家会发现小米.饿了吗等互联网巨头都在用时序数据库实现企业级的互联网监控系统. 很多人会说,用Zabbix不就搞定了,其实不是这样的,简单的主机资源监控.网络监控.小规模的部署环境,Zabbix能搞定. 如果在IDC 上千台服务器环境下,分布式应用架构.各种中间件,这种情况下我们

互联网级监控系统必备-时序数据库之Influxdb集群及踩过的坑

上篇博文中,我们介绍了做互联网级监控系统的必备-Influxdb的关键特性.数据读写.应用场景: 互联网级监控系统必备-时序数据库之Influxdb 本文中,我们介绍Influxdb数据库集群的搭建,同时分享一下我们使用集群遇到的坑! 一.环境准备 同一网段内,3个CentOS 节点,相互可以ping通 3个节点CentOS配置Hosts文件,相互可以解析主机名 Azure 虚拟机启用root用户 influxdb-0.10.3-1.x86_64.rpm 设置端口8083 8086 8088 8

时序数据库连载系列: 时序数据库一哥InfluxDB之存储机制解析

InfluxDB 的存储机制解析 本文介绍了InfluxDB对于时序数据的存储/索引的设计.由于InfluxDB的集群版已在0.12版就不再开源,因此如无特殊说明,本文的介绍对象都是指 InfluxDB 单机版 1. InfluxDB 的存储引擎演进 尽管InfluxDB自发布以来历时三年多,其存储引擎的技术架构已经做过几次重大的改动, 以下将简要介绍一下InfluxDB的存储引擎演进的过程. 1.1 演进简史 版本0.9.0之前 **基于 LevelDB的LSMTree方案** 版本0.9.0

【时序数据库】十分钟系列

参考文档: 十分钟看懂时序数据库(I)-存储 十分钟看懂时序数据库(II)- 预处理 十分钟看懂时序数据库(III)- 压缩 十分钟看懂时序数据库(IV)- 分级存储 十分钟看懂时序数据库(V)- 分布式计算 原文地址:https://www.cnblogs.com/badboy200800/p/10986467.html

java使用influxDB时序数据库

本人写的这篇文章主要是介绍java如何使用influxDB时序数据库,具有一定的参考价值,感兴趣的小伙伴们可以参考一下. 废话不多说,直接上代码: 1.pom.xml引入相关jar文件,如下: <!-- 引入influxdb依赖 --> <dependency> <groupId>org.influxdb</groupId> <artifactId>influxdb-java</artifactId> <version>2