一分钟 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 这些轮子组装到一起,看看组装之后的车子能否跑起来,敬请期待。

一分钟 Get 时序数据库 InfluxDB 的技能的更多相关文章
- 时序数据库InfluxDB安装及使用
时序数据库InfluxDB安装及使用 1 安装配置 安装 wget https://dl.influxdata.com/influxdb/releases/influxdb-1.3.1.x86_64. ...
- 分布式时序数据库InfluxDB
我们内部的监控系统用到分布式时序数据库InfluxDB http://www.ttlsa.com/monitor-safe/monitor/distributed-time-series-databa ...
- 时序数据库InfluxDB
在系统服务部署过后,线上运行服务的稳定性是系统好坏的重要体现,监控系统状态至关重要,经过调研了解,时序数据库influxDB在此方面表现优异. influxDB介绍 时间序列数据是以时间字段为每行数据 ...
- 时序数据库InfluxDB(I)- 搭建与采集信息demo操作
搭建环境:vmware workstation pro15.5.0, ubuntu18.04.3 实践时间:2019.10.12-10.27 (一)时序数据库InfluxDB准备 (1)安装 曾出现问 ...
- [Go] 时序数据库influxdb的安装
日志类的数据时候存储在时序数据库中,下面就是时序数据库influxdb的安装 curl -sL https://repos.influxdata.com/influxdb.key | apt-key ...
- Spring Boot中使用时序数据库InfluxDB
除了最常用的关系数据库和缓存之外,之前我们已经介绍了在Spring Boot中如何配置和使用MongoDB.LDAP这些存储的案例.接下来,我们继续介绍另一种特殊的数据库:时序数据库InfluxDB在 ...
- 简析时序数据库 InfluxDB
时序数据基础 时序数据特点 时序数据TimeSeries是一连串随时间推移而发生变化的相关事件. 以下图的 CPU 监控数据为例,同个 IP 的相关监控数据组成了一条时序数据,不相关数据则分布在不同的 ...
- 时序数据库InfluxDB的基本语法
一 了解InfluxDB的必要性 时序数据库主要存放的数据 Time series data is a series of data points each associated with a spe ...
- 深入浅出:了解时序数据库 InfluxDB
数据模型 1.时序数据的特征 时序数据应用场景就是在时间线上每个时间点都会从多个数据源涌入数据,按照连续时间的多种纬度产生大量数据,并按秒甚至毫秒计算的实时性写入存储. 传统的RDBMS数据库对写入的 ...
随机推荐
- .netCore下的jwt的梳理-->借鉴于“老张的哲学”
之前在公司的项目中有用到jwt进行token验证,但是公司里用的框架已经集成好了jwt,所以对jwt的的了解不够清晰,感觉还是隔着一层.在看了“老张的哲学”的jwt部分后对jwt的认识才更加深刻了一些 ...
- mui中如何使用tab来切换子页面 mui-bar, mui-bar-tab
mui是前端框架但是很多人用它写移动端 那么mui底部切换是怎么做到的呢? 如何点击某个tab来切换不同的页面? 解答: 1首先我们需要引入mui框架的底部tab元素 代码如下 <!--tabl ...
- 【音视频连载-001】基础学习篇- SDL 介绍以及工程配置
技术开发故事会连载 这是音视频基础学习系列的第一篇文章,主要讲解 SDL 是什么以及为什么要用到它,看似和音视频没啥卵关系,其实必不可少. SDL 简介 SDL 是 "Simple Dire ...
- drf呼啦圈
呼啦圈 1.1 表结构设计 不会经常变化的值放在内存:choices形式,避免跨表性能低. 分表:如果表中列太多/大量内容可以选择水平分表 表自关联 from django.db import mod ...
- 深入理解yield from语法
本文目录 为什么要使用协程 yield from的用法详解 为什么要使用yield from . 为什么要使用协程# 在上一篇中,我们从生成器的基本认识与使用,成功过渡到了协程. 但一定有许多人,只知 ...
- Day1T3小w的魔术扑克——图论
为什么不搞\(T2\)??? 因为我太菜了,那题我是真的搞不出来 题目描述 链接:https://ac.nowcoder.com/acm/contest/1100/C 来源:牛客网 小\(w\)喜欢打 ...
- Linux内核文档:如何写符合 kernel-doc 规范的注释
简介 Linux内核使用 Sphinx 实现把 Documentation 目录下的 reStructuredText 文件转换为非常漂亮的文档.文档既可以通过 make htmldocs 转换成 H ...
- Python习题集(十六)
每天一习题,提升Python不是问题!!有更简洁的写法请评论告知我! https://www.cnblogs.com/poloyy/category/1676599.html 题目 写一个函数repl ...
- 微信小程序开发(四)学习基本组件
现在我们已经学会使用工具了,再来了解,测试一下微信小程序的常用组件,所谓组件,就是微信团队已经开发好的一些常用标签,我们只需要掌握用法就可以了,当然,以后学得深入了,也可以开发自己的组件,让其他人使用 ...
- 深度学习归一化:BN、GN与FRN
在深度学习中,使用归一化层成为了很多网络的标配.最近,研究了不同的归一化层,如BN,GN和FRN.接下来,介绍一下这三种归一化算法. BN层 BN层是由谷歌提出的,其相关论文为<Batch No ...