【时序数据库InfluxDB】Windows环境下配置InfluxDB+数据可视化,以及使用 C#进行简单操作的代码实例...

前言:如题。直接上手撸,附带各种截图,就不做介绍了。

1、influxDB的官网下载地址  https://portal.influxdata.com/downloads/

打开以后,如下图所示,可以选择版本号,以及平台。此处咱们选择windows平台。不过此处没有实际的可以下载的地方,着实比较过分,不过咱们可以另辟蹊径。

b508c9242300d42bd5ea3cbe24d7c9f6.png

2、直接下载。具体地址如下,2.3.0是版本号:

https://dl.influxdata.com/influxdb/releases/influxdb2-2.3.0-windows-amd64.zip

链接说明:该链接是下载windows版本的influxDB的链接,其中 influxdb2-2.3.0-windows-amd64.zip 里面,2.3.0是版本号,可以通过修改这个版本号来下载你所需要的具体版本文件。

68f08d2955e95f67053533a6452628d3.png

3、或者通过这个地址进行下载:

https://docs.influxdata.com/influxdb/v2.1/install/?t=Windows

其中,/v2.1是版本号,把2.1改成2.3就可以下载2.3的版本了。此处仅做个实验,例如下载2.1版本。

b24b20738312d439f498f2ab4b155533.png

4、可以对比下真实的下载链接地址,与上面的2.3.0版本地址只差了一个版本号信息,其他都一样。

984bb4736fd0c00686c261bc5348e61f.png

5、此处使用2.3.0版本,解压以后进行使用。

1e703c66b06baff8b64d77cd17face95.png

6、CMD到解压的根目录下,直接执行influxdb.exe文件(cmd命令执行,不会闪退,直接点有可能会一闪而过)

备注:也可以通过nssm工具进行部署成Windows服务,部署方法可以参考我的其他博客内容,有相关信息,此处不再重复写。

2c216aa46dcd6143239abc4a329360e3.png

7、启动以后,在cmd窗口也可以看到默认端口号8086,所以在地址栏输入 htp://127.0.0.1:8086/onboarding/  就可以打开起始监控面板,然后进行一些初始化操作了。

ace6a38a37db64848d57a6c3a4199fce.png

8、打开初始页面,可以用来创建初始用户信息

1d32e4b7f4ce70610ac4f0fb156d69ac.png

9、例如,我此处创建一个用户 wesky,以及有关的组和实例,如图备注的信息。然后执行下一步(CONTINUE)

3eef9f0d03868e84e3856832efdd0d28.png

10、选择快速开始

a2693ff96e5e03d5686ccb00dbf0fa9b.png

11、创建完成以后,进入到主页。

bc5103b36bdf2017f6d782151e41e5a3.png

12、可以看到它支持的客户端,包括C#,以及其他很多别的支持。说明还是比较强大了,支持的方案有很多,以及也可以支持从消息队列、系统日志、其他数据库等地方进行导入或写入数据,有待大佬们自己摸索了。

83d9af50d61e3aa1e1aecb12b3fab339.png

13、找到API TOKENS选项,这里会生成用户的一个唯一token信息,用来写代码时候会用到。

f2cfeac80479f35b7baafe60281f4df6.png

14、点击用户's Token,可以打开具体的token信息

81c0e77fd709b74d766ea12fc9795f4e.png

15、找到token信息,可以先拷贝下来备用。或者等下需要的时候,知道在这里寻找也可以。

5aa13e281bdeab9f86b468672bcb9d07.png

16、接下来开始写个代码进行演示一下基础操作,当作入个门。创建一个控制台项目,叫InfluxDbTest

6d4a28ac29f34f37feb926ab31e63b07.png

17、此处选择.net 6版本环境,当然,大佬们也可以选择其他环境,问题不大的。

ae9c0364b26af291027995a1fe7f3948.png

18、创建完成以后,引入nuget包 InfluxDB.Client

2db91a722049bf37118f73eed0b0d174.png

19、写点代码测试一下(源码会附录在文末),此处先创建客户端,然后定义组织、以及实例(Bucket),然后通过写入一个数据进行进行测试(此处手抖了一下,我运行了两次,所以实际写入了两个数据)

备注:写入数据或者读写或者其他操作,也可以参考上面influxdb面板里面提供C#功能的案例里面,点击进去可以看到一些例子。

94206792fbe07d3096cb3bbabb6c45cb.png

20、如图,可视化面板里面,可以进行数据查询,以及数据可视化。Bucket就是咱们创建的数据库实例,mem就是对应上面的代码里面写的mem,可以当作是一个表,然后是一些标签、字段等。Field是字段,可以自己拓展其他字段等等。

4aee5e2d4fb912a07378297da6f759c3.png

21、写个循环,累加测试一下,改造一下代码,然后继续运行。

467137684c829cf4b2f0fb0215903183.png

22、可以看到数据一直往上飘,因为值是累加的,所以效果和预期一致。

3ac4e16387c0c44090200fd7112f7961.png

23、来点刺激一点的测试,搞个随机数,可能效果会好玩一点。此处弄个写入0-100的随机数,然后间隔10msx写入一次。

8a810b09037ebb5209e732dd0f465e15.png

24、让显示的按照10ms为单位进行显示,效果如图,数值都是随机的,所以走势就很花里胡哨了。

0cfbff2da99eac7d6b5b101f31f82e52.png

25、展示效果选择表格样式,如图,也是可以的。

b117d49dc47ea2e3e242a01007cf2dfd.png

有关最终的代码:

02e74e1dfb4fadbc5dc0774942519567.jpeg

using InfluxDB.Client;using InfluxDB.Client.Api.Domain;using InfluxDB.Client.Writes;Console.WriteLine("Hello, World!");const string token = "mOGqO3m23KHOAnsByiEAS6rJGEZEl0iuhZNGn0QNbg_vs4P_Rqa9_eWmnuYb_ovS7dy2G19xA-SqR6RMlQ3iXw==";  // influxdb生成的tokenconst string org = "Organization";const string bucket = "Bucket";using (var client = InfluxDBClientFactory.Create("http://localhost:8086", token))  // 生产环境下使用,可以使用单例来注册使用同一个客户端,减少创建次数{    using (var writeApi = client.GetWriteApi()){        for (int i = 0; i <= 1000; i++){            var point = PointData.Measurement("mem").Tag("host", "local").Field("Field1", new Random().Next(0,100)).Timestamp(DateTime.UtcNow, WritePrecision.Ns);writeApi.WritePoint(point, bucket, org);Thread.Sleep(10);}}}Console.WriteLine("Hello, World 2 !");Console.ReadLine();

99e99d9d00fb80c84aa7b00ab0ccee5e.jpeg

以上就是该文章的全部内容,时序数据库可以用于工业物联网环境下,特别是对设备数值进行监控,可以很直观看出每个时间区间的状态图、或者步行图等等。欢迎大佬们自行去拓展更加风骚的玩法,此处仅用于入门教程。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/284071.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

官宣 微软跨平台 UI 框架 .NET MAUI 6 正式发布

微软宣布 .NET MAUI 已正式 GA。 .NET MAUI (.NET Multi-platform App UI) 是一个跨平台 UI 框架&#xff08;前身是 Xamarin.Forms&#xff09;&#xff0c;用于通过 C# 和 XAML 创建原生移动和桌面应用。基于 .NET MAUI&#xff0c;开发者可在单个共享代码库中创建同时支持 A…

《.NET物联网从零开始》系列

近日搞硬件网关时&#xff0c;那些残存的数电、模电和通信原理的记忆时常在脑海中萦绕&#xff1b;想起来多年前看张高兴的博客学会了.netcore树莓派进行物联网开发。使用dragonboard(龙板)搭载windows 10 iot系统&#xff0c;配合光电传感器和rfid实现了一个项目原型。碰巧逛g…

设计好接口的 36 个锦囊(原则)

目录 设计好接口的 36 个锦囊 | 接口参数校验 | 修改老接口时&#xff0c;注意接口的兼容性 | 设计接口时&#xff0c;充分考虑接口的可扩展性 | 接口考虑是否需要防重处理 | 重点接口&#xff0c;考虑线程池隔离 | 调用第三方接口要考虑异常和超时处理 | 接口实现考虑…

嵌入式第11次实验

嵌入式软件设计第11次实验报告 学号&#xff1a;140201236 姓名&#xff1a;沈樟伟 组别&#xff1a;第2组 实验地点&#xff1a;D19 一、实验目的&#xff1a; 1、了解短信AT指令的使用方法。 2、掌握使用短信AT指令驱动SIM900A发送和接收短信的方…

Linux文件系统之df

df用于查看当前挂载的文件系统-a 查看所有的文件系统可以自己指定容量单位&#xff0c;-BM -BG 但是还是h的选项好用-i 查看inode的使用信息-l(L) 显示本地文件系统--output 可以指定管理员想要看的列--outputField_List可用的字段有source fstype itotal iused iavail ipcent …

普通老实人的生活

2019独角兽企业重金招聘Python工程师标准>>> 有一个朋友&#xff0c;他家有一套营业房&#xff0c;租给了两个年轻人&#xff0c;合同签订为半年&#xff0c;房租7000&#xff0c;合同到期当天&#xff0c;乙方一直没有联系甲方&#xff0c;说明续租或不续租&#x…

如何在 C# 中运行 Python 代码

前言Python是一门强大的编程语言。特别的是&#xff0c;它还具有众多出色的库&#xff08;例如numPy&#xff0c;sciPy&#xff0c;pandas等&#xff09;&#xff0c;可以显著简化和加速开发。因此&#xff0c;在解决某些问题时&#xff0c;通过 Python 实现可能是最理想的方式…

【QGIS入门实战精品教程】10.2:QGIS中DEM三维显示方法

QGIS中数字高程模型DEM三维显示方法。 参考阅读: 【ArcGIS Pro微课1000例】0006:ArcGIS Pro 2.5三维显示DEM数字高程模型 【ArcGIS Pro微课1000例】0005:ArcGIS Pro 2.5基于矢量数据制作拉伸三维地图案例 ArcGIS实验教程——实验二十六:ArcScene实现二维数据的三维显示 文章…

基于Dubbo框架构建分布式服务(三)

我们将上面开发的服务提供方服务&#xff0c;部署到2个独立的节点上&#xff08;192.168.14.1和10.10.4.125&#xff09;&#xff0c;然后可以通过Dubbo管理中心查看对应服务的状况&#xff0c;如图所示&#xff1a; 上图中可以看出&#xff0c;该服务有两个独立的节点可以提供…

开篇-开启全新的.NET现代应用开发体验

01云原生技术底座畅想DaprMASA Framework研发管理研发协作平台&#xff1a;CI/CD、Application ManagementApplication Quota Management、Version Control、Troubleshooting、Testable网格应用程序管理API网关&#xff1a;Reverse Proxy、Traffic Control 、Security Strategy…

【QGIS入门实战精品教程】10.3:QGIS栅格DEM数据重复类方法案例汇总

QGIS栅格DEM数据重复类方法案例汇总:按表格重分类、按图层重分类。 参考阅读: 【GlobalMapper精品教程】029:栅格重分类案例详解 ArcGIS实验教程——实验四十三:ArcGIS栅格重分类(Reclass)案例详解 ArcGIS怎样获取重分类后各类所占的像元个数 文章目录 一、按表格分类二、…

QT添加rtmp库的时候出现问题

刚开始出现undefined reference to __chkstk的错误。 然后在vc里面找到chkstk.obj放到相关目录下并在工程文件直接添加&#xff1a; LIBS "E:\QTProjects\RTMP\RTMPDelayTest\librtmp\lib\chkstk.obj" 又出现了新的错误 E:\QTProjects\RTMP\RTMPDelayTest\librtmp\l…

@Before,@BeforeClass,@BeforeEach和@BeforeAll之间的区别

Before的代码在每次测试之前执行 BeforeClass在整个测试方法执行之前运行一次 如果您的测试类有十个测试&#xff0c;则Before代码将执行十次&#xff0c;但是BeforeClass将仅执行一次。 当多个测试需要共享相同的代码时&#xff0c;可以使用BeforeClass 。 建立数据库连接属于…

.NET MAUI 跨平台应用开发 I|.NET MAUI 跨平台基础

编辑&#xff1a;Alan Wang排版&#xff1a;Rani Sun微软 Reactor 为帮助广开发者&#xff0c;技术爱好者&#xff0c;更好的学习 .NET Core, C#, Python&#xff0c;数据科学&#xff0c;机器学习&#xff0c;AI&#xff0c;区块链, IoT 等技术&#xff0c;将每周三到周六&…

走出宣传,国产VR手机盒子到底哪家强?

国产VR手机盒子作为入门机是一个不错的选择&#xff0c;不过你知道哪一款更适合你吗&#xff1f; 从去年看虚拟现实还是一个遥不可及的梦&#xff0c;今年却真正的火起来了。各大厂商纷纷推出自家的VR设备&#xff0c;宣传活动如火如荼。爱尝鲜的你是否按耐不住? 如果你觉得动…

【ArcGIS Pro微课1000例】0024:自定义坐标系统---以阿尔伯斯投影(Albers)为例

在实际工作中,经常需要进行矢量数据或栅格数据的投影转换工作,但有时候ArcGIS中恰恰没有我们需要的坐标系,此时,就需要我们自定义坐标系。本文以阿尔伯斯投影(Albers)为例,讲解自定义投影的一般过程及注意事项。 文章目录 一、自定义坐标系二、投影转换一、自定义坐标系…

旧金山参议员提议发布“封杀令”,理由是马路不为机器人所服务

说实话&#xff0c;这个理由有够奇葩。 因为快递无人机所受限制颇多&#xff0c;渐渐地&#xff0c;越来越多的快递机器人被研制出来&#xff08;这里的“机器人”&#xff0c;包括无人车和及机器人&#xff09;&#xff0c;用于城市的快递发送&#xff0c;比如国内的京东无人…

【QGIS入门实战精品教程】7.2:QGIS点状数据符号化设置案例教程

点状符号化的类型有:单一符号、分类、渐进、基于规则、点的位移、点聚类、热图。 相关阅读: 【QGIS入门实战精品教程】7.1:QGIS面状数据符号化设置案例教程 文章目录 一、单一符号二、分类三、渐进四、基于规则五、点的位移六、点聚类七、热图一、单一符号 跟面状符号一样,…

SpringCloud与Dubbo的比较

Dubbo 一、dubbo简介 Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架&#xff0c;使得应用可通过高性能的RPC实现服务的输出和输入功能&#xff0c;可以和Spring框架无缝集成。 Dubbo是一款高性能、轻量级的开源Java RPC框架&#xff0c;它提供了三大核心能力&#xff…

VR 技术加上 8K 画质! 2016 年里约奥运会亮点十足

据报道&#xff0c;2016 年里约奥运会将运用到 VR 技术。 最近&#xff0c;奥林匹克广播服务公司&#xff08;OBS&#xff09;表示出对虚拟现实技术的兴趣&#xff0c;其实用虚拟现实技术报道赛事已经不是什么新鲜的事了&#xff0c;之前 NBA 就这样做过&#xff0c;但是将奥运…