influxdb(influxdb修改数据)

来源网友投稿 1230 2022-12-28

本站部分文章、图片属于网络上可搜索到的公开信息,均用于学习和交流用途,不能代表睿象云的观点、立场或意见。我们接受网民的监督,如发现任何违法内容或侵犯了您的权益,请第一时间联系小编邮箱jiasou666@gmail.com 处理。
本篇文章给大家谈谈influxdb,以及influxdb修改数据对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 今天给各位分享influxdb的知识,其中也会对influxdb修改数据进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

influxDB高可用方案实践

##一、gateway
##二、influxdb-relay

    influxdb的高可用层最初由influxdata创建提出,但之后不再维护。其架构图如下:其中负载设备(load Balancer)可以通过nginx对于读请求直接转发到inflxudb,对于写请求转发到relay。可以通过IP地址转发,也可以通过域名来转发.

```

https://github.com/influxdata/influxdb-relay

配置

[[http]]

name ="example-http"

bind-addr ="127.0.0.1:9096"

# Array of InfluxDB instances to use as backends for Relay.

output = [

# name: name of the backend, used for display purposes only.

# location: full URL of the /write endpoint of the backend

# timeout: Go-parseable time duration. Fail writes if incomplete in this time.

{ name="local1", location="write", timeout="10s"},

{ name="local2", location="write", timeout="10s"},

]

[[udp]]

# Name of the UDP server, used for display purposes only.

name ="example-udp"

# UDP address to bind to.

bind-addr ="127.0.0.1:9096"

# Socket buffer size for incoming connections.

read-buffer = 0# default

# Precision to use for timestamps

precision ="n"# Can be n, u, ms, s, m, h

# Array of InfluxDB instances to use as backends for Relay.

output = [

# name: name of the backend, used for display purposes only.

# location: host and port of backend.

# mtu: maximum output payload size

{ name="local1", location="127.0.0.1:8089", mtu=512 },

{ name="local2", location="127.0.0.1:7089", mtu=1024 },

]

```

运行  nohup ./influxdb-relay -config relay.toml

测试 curl -i -XPOST 'http://localhost:9096/write?db=testDB' --data-binary 'cpu_load_short,host=server01,region=us-west value=0.67'

配置方式一:单机双写

        relay只配置[[http]]选项的场景: bind-addr是强绑定(只能通过指定的IP访问,localhost对应127.0.0.1)

      设置的端口防火墙是否打开。

配置方式二:双机双写

      relay只配置[[http]]选项的场景: bind-addr是强绑定(只能通过指定的IP访问,localhost对应127.0.0.1)

      设置的端口防火墙是否打开。且两主机间要可以通信。relay主机可以远行在两个主机上,也可以独立远行。
##三、influxdb-proxy

Spring Boot中使用时序数据库InfluxDB



除了最常用的关系数据库和缓存之外,之前我们已经介绍了在Spring Boot中如何配置和使用 MongoDB 、 LDAP 这些存储的案例。接下来,我们继续介绍另一种特殊的数据库:时序数据库InfluxDB在Spring Boot中的使用。

什么是时序数据库?全称为时间序列数据库。时间序列数据库主要用于指处理带时间标签(按照时间的顺序变化,即时间序列化)的数据,带时间标签的数据也称为时间序列数据。时间序列数据主要由电力行业、化工行业等各类型实时监测、检查与分析设备所采集、产生的数据,这些工业数据的典型特点是:产生频率快(每一个监测点一秒钟内可产生多条数据)、严重依赖于采集时间(每一条数据均要求对应唯一的时间)、测点多信息量大(常规的实时监测系统均有成千上万的监测点,监测点每秒钟都产生数据,每天产生几十GB的数据量)。虽然关系型数据库也可以存储基于时间序列的数据,但由于存储结构上的劣势,使得这些数据无法高效地实现高频存储和查询统计,因此就诞生了一种专门针对时间序列来做存储和优化的数据库,以满足更高的效率要求。(参考:百度百科:时序数据库https://baike.baidu.com/item/%E6%97%B6%E5%BA%8F%E6%95%B0%E6%8D%AE%E5%BA%93/922671)

InfluxDB就是目前比较流行的开源时序数据库(官网地址:https://www.influxdata.com/),我们比较常见的使用场景就是一些与时间相关的高频的数据记录和统计需要,比如:监控数据的存储和查询。

在进行下面的动手环节之前,先了解一下InfluxDB中的几个重要名词:

其中,一个Point由三个部分组成:

在了解了什么是时序数据库以及InfluxDB一些基础概念之后,下面我们通过一个简单的定时上报监控数据的小案例,进一步理解InfluxDB的基础配置、数据组织和写入操作!

第一步 :创建一个基础的Spring Boot项目(如果您还不会,可以参考这篇文章:快速入门(https://blog.didispace.com/spring-boot-learning-21-1-1/)

第二步 :在 pom.xml 中引入influx的官方SDK

注意:这里因为Spring Boot 2.x版本的parent中有维护InfluxDB的SDK版本,所以不需要手工指明版本信息。如果使用的Spring Boot版本比较老,那么可能会缺少version信息,就需要手工写了。

第三步 :配置要连接的influxdb信息

三个属性分别代表:连接地址、用户名、密码。到这一步,基础配置就完成了。

注意:虽然没有spring data的支持,但spring boot 2.x版本中也实现了InfluxDB的自动化配置,所以只需要写好配置信息,就可以使用了。具体配置属性可以查看源码: org.springframework.boot.autoconfigure.influx.InfluxDbProperties 。

第四步 :创建定时任务,模拟上报数据,并写入InfluxDB

第一步 :启动InfluxDB,并通过命令行准备好要使用的数据库,主要涉及的命令如下;

第二步 :启动Spring Boot应用,在定时任务的作用下,我们会看到类似下面的日志:

第三步 :通过命令,查看一下InfluxDB中是否已经存在这些数据

可以看到,已经存在与日志中一样的数据了。

本文的完整工程可以查看下面仓库中 2.x 目录下的 chapter6-3 :

InfluxDB简单介绍

命令行形式

HTTP APIs

/ping

/query

/write

简单来说,RP就是一个定期删除旧数据的组件。像RRD,Graphite中类似的功能

CQ在InfluxDB中是一个很有特色的功能,有些场景下原始数据是秒级别,但是查询时只需要分钟级别的聚合值,如果每次查询秒级别的数据再聚合成分钟级别的数据,就显得有些多余,查询不高效。CQ的作用就是定时跑一个InfluxQL,预先计算好数据存入另一个地方,数据的查询只需查计算后的表,查询响应时间和存储空间上有很大的优化。

一个database中的series值为 (measurement) x (tag set) x (reteion policy)。

series的数量对于InfluxDB的性能有很大的影响,series数量越多对CPU、内存资源的要求越大。所以存储数据时,需要注意下哪些数据可以存为 field ,哪些数据必须是 tag 。

InfluxData公司还推出了基于InfluxDB为存储后端的其它组件,Telegraf是一个类似Flume、Heka的收集器,Chronograf是一个类似Grafana的前端展示。Kapacitor比较特殊,既是报警检测的组件,也是一个ETL组件,可以代替CQ的功能,减少大量CQ的执行,对于InfluxDB本身带来的负担。

关于influxdb和influxdb修改数据的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。 influxdb的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于influxdb修改数据、influxdb的信息别忘了在本站进行查找喔。
上一篇:拓维信息AI收费稽核创新方案实现高速公路通行计费公平公正
下一篇:维控推出全新PLC LX3VM系列,以满足客户在数控机械加工上的多种需求
相关文章

 发表评论

暂时没有评论,来抢沙发吧~