InfluxDB 2.0 原理与应用实践

什么是时序数据库

时序数据库,全称时间序列数据库(Time Series Database,TSDB),用于存储大量基于时间的数据,时序数据(Time Series Data)指的是一系列基于时间的数据,例如CPU利用率,北京的房价变化趋势,某一地区的温度变化等。

时序数据库支持时序数据的快速写入、持久化,多维度查询、聚合等操作,同时可以记录所有的历史数据,查询时将时间作为数据的过滤条件。

时序数据的使用场景广泛,包括DevOps监控,应用程序指标,IoT传感器数据,实时动态数据分析等场景。

1

初识InfluxDB

InfluxDB是时序数据库中应用比较广泛的一种,在DB-Engines TSDB rank中位居首位,可见InfluxDB在互联网的受欢迎程度是非常高的。下图是截止到2021年8月时序数据库的排名情况。

1056×471 78.7 KB

它是go语言开发的数据库,InfluxDB自发布至今,已经有两个版本,InfluxDB1.x系列提供一种类似SQL的查询语言InfluxQL,用于数据交互。2019年1月新推出的influxDB2.0 alpha版本,主推全新的查询语言Flux,支持TICK架构。在 2020 年底推出InfluxDB 2.0 正式版本,该版本又分为InfluxDB Cloud 和 InfluxDB OSS两个系列。

时序数据库与我们熟悉的关系型数据库有所不同,首先需要了解一下InfluxDB中字段的含义,如下图所示:

1080×549 128 KB

2

TICK架构分析与各组件功能介绍

TICK架构 是 InfluxData 平台的组件的集合首字母缩写,该集合包括Telegraf、InfluxDB、Chronograf和 Kapacitor。TICK架构以及各组件分工情况如图所示:

1052×594 20.8 KB

除了上图可视化管理工具Chronograf外,还有一种可视化工具Grafana,它也是用于大规模指标数据的可视化展示,提供包括折线图,饼图,仪表盘等多种监控数据可视化UI,若应用过程中考虑到扩展性问题,也会使用Grafana代替Chronograf。

3

InfluxDB的特点

● 数据写入:

①. 高并发高吞吐,可持续的数据写入。

②. 写多读少,时序数据95%以上都是写操作,例如在监控系统数据的时候,监控数据特别多,但是通常只会关注几个关键指标。

③. 数据实时写入,不支持数据更新,但是可以人为更新修改。

● 数据分析与查询:

①. 数据查询是按照时间段读取,例如1小时,1分钟,给出具体时间范围。

②. 最近的数据读取率高,越旧的数据读取率越低。

③. 多种精度查询和多种维度分析。

● 数据存储:

①. 存储数据规模大的数据,监控数据的数据大多数情况下都是TB或者PB级。

②. 数据存放具有时效性,InfluxDB提供了保存策略,可以认为是数据的保质期,超过周期范围,就可以认为数据失效,需要回收。节约存储成本,清理低价值的数据。

4

InfluxDB存储原理

InfluxDB的存储

  • 0
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
InfluxDB 2.0是一个由Go语言开发的数据库系统,它有两个版本:InfluxDB 1.x系列和InfluxDB 2.0系列。InfluxDB 2.0引入了全新的查询语言Flux,并支持TICK架构。它提供了一种类似SQL的查询语言InfluxQL,用于数据交互。InfluxDB 2.0还分为InfluxDB Cloud和InfluxDB OSS两个系列。如果你想安装InfluxDB 2.0,你可以通过以下步骤进行操作: 1. 下载InfluxDB 2.0的安装包: ``` wget https://dl.influxdata.com/influxdb/releases/influxdb2-2.0.7-amd64.deb ``` 2. 安装InfluxDB 2.0: ``` sudo dpkg -i influxdb2-2.0.7-amd64.deb ``` 如果你想在Java项目中使用InfluxDB 2.0,你需要在项目的pom.xml文件中添加以下Maven依赖包: ```xml <dependency> <groupId>com.influxdb</groupId> <artifactId>influxdb-client-java</artifactId> <version>2.0.0</version> </dependency> ``` 这样你就可以在Java项目中使用InfluxDB 2.0了。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* *2* [InfluxDB 2.0 原理应用实践](https://blog.csdn.net/hogwarts_ziqi/article/details/126000472)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [InfluxDb2.0使用与集成](https://blog.csdn.net/Calm_D/article/details/120646931)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值