前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >influxdb 文档_时序数据库 应用场景

influxdb 文档_时序数据库 应用场景

作者头像
全栈程序员站长
发布2022-11-09 14:25:57
1.3K0
发布2022-11-09 14:25:57
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

InfluxDB是一个由InfluxData开发的开源时序型数据。它由Go写成,着力于高性能地查询与存储时序型数据。InfluxDB被广泛应用于存储系统的监控数据,IoT行业的实时数据等场景。

InfluxDB有三大特性:

  1. Time Series (时间序列):你可以使用与时间有关的相关函数(如最大,最小,求和等)
  2. Metrics(度量):你可以实时对大量数据进行计算
  3. Eevents(事件):它支持任意的事件数据

InfluxDB详解_顺其自然~的博客-CSDN博客_influxdb

database:数据库; measurement:数据库中的表; points:表里面的一行数据。 influxDB中独有的一些概念:Point由时间戳(time)、数据(field)和标签(tags)组成。series:一些数据结合,同一个database下,retention policy、measurement、tag sets完全相同的数据同属于一个 series,同一个series的数据物理上会存放在一起;

在influxdb中,字段必须存在。因为字段是没有索引的。如果使用字段作为查询条件,会扫描符合查询条件的所有字段值,性能不及tag。类比一下,fields相当于SQL的没有索引的列。 tags是可选的,但是强烈建议你用上它,因为tag是有索引的,tags相当于SQL中的有索引的列。tag value只能是string类型。

代码语言:javascript
复制
常用InfluxQL


-- 查看所有的数据库
show databases;
-- 使用特定的数据库
use database_name;
-- 查看所有的measurement
show measurements;
-- 查询10条数据
select * from measurement_name limit 10;
-- 数据中的时间字段默认显示的是一个纳秒时间戳,改成可读格式
precision rfc3339; -- 之后再查询,时间就是rfc3339标准格式
-- 或可以在连接数据库的时候,直接带该参数
influx -precision rfc3339
-- 查看一个measurement中所有的tag key 
show tag keys
-- 查看一个measurement中所有的field key 
show field keys
-- 查看一个measurement中所有的保存策略(可以有多个,一个标识为default)
show retention policies;


create database db1  -- 创建数据库db1
drop database db1  -- 删除数据库db1
drop measurement mt1  -- 删除表mt1
delete from measurement [WHERE <tag_key> <operator>]
drop shard <shard_id_num> 删除分片

函数 · InfluxDB中文文档

influxdbV1 和influxdbV2 1. 查询方法变更 原来使用InfluxQL方式查询,现在使用内置的Flux方式查询

2. 底层数据结构变更 原来的bucket+时间保留计划=现在的bucket

3. task取代连续查询 1.x版本和2.x版本最大的差异是连续查询(continuous query)已经被任务(task)所取代。influxdb中的连续查询功能是对外提供的对数据处理的功能,如为了预防我们的存储日志过大会建立起保存策略,超过设置的超时时间数据就丢失了。针对这种情况,我们可以通过连续查询功能,对用户的数据进行汇总、抽样等操作,再插入到另外的表中即可,虽然丢失了一定的精度,但是让数据占用的空间大大减小。

安装与访问

influxdb 文档_时序数据库 应用场景
influxdb 文档_时序数据库 应用场景

2.x版本,需要记住 bucket host org token

时序数据库influxDB(一)Linux安装与图形化/CLI连接influxDB2.2.0_xuehu96的博客-CSDN博客_influxdb连接

Flux query basics | Flux 0.x Documentation

代码语言:javascript
复制
from(bucket: "example-bucket")              // ── Source
    |> range(start: -1d)                    // ── Filter on time
    |> filter(fn: (r) => r._field == "foo") // ── Filter on column values
    |> group(columns: ["sensorID"])         // ── Shape
    |> mean()                               // ── Process

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/185840.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年10月5日 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档