【时序数据库InfluxDB】Windows环境下配置InfluxDB+数据可视化,以及使用 C ...

张春  金牌会员 | 2022-8-20 20:35:39 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 690|帖子 690|积分 2070

前言:如题。直接上手撸,附带各种截图,就不做介绍了。
 
1、influxDB的官网下载地址  https://portal.influxdata.com/downloads/
打开以后,如下图所示,可以选择版本号,以及平台。此处咱们选择windows平台。不过此处没有实际的可以下载的地方,着实比较过分,不过咱们可以另辟蹊径。

 
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是版本号,可以通过修改这个版本号来下载你所需要的具体版本文件。

 
3、或者通过这个地址进行下载:
https://docs.influxdata.com/influxdb/v2.1/install/?t=Windows
其中,/v2.1是版本号,把2.1改成2.3就可以下载2.3的版本了。此处仅做个实验,例如下载2.1版本。

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

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

 
6、CMD到解压的根目录下,直接执行influxdb.exe文件(cmd命令执行,不会闪退,直接点有可能会一闪而过)
备注:也可以通过nssm工具进行部署成Windows服务,部署方法可以参考我的其他博客内容,有相关信息,此处不再重复写。

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

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

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

 
10、选择快速开始

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

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

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

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

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

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

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

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

 
19、写点代码测试一下(源码会附录在文末),此处先创建客户端,然后定义组织、以及实例(Bucket),然后通过写入一个数据进行进行测试(此处手抖了一下,我运行了两次,所以实际写入了两个数据)
备注:写入数据或者读写或者其他操作,也可以参考上面influxdb面板里面提供C#功能的案例里面,点击进去可以看到一些例子。

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

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

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

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

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

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

 
有关最终的代码:
[code]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

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

张春

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表