[598]Windows版InfluxDB及相关软件安装与配置

2023-11-15

公司在做一个工业监控系统,虽然数据采集点并不算多但是数据量积累下来也非常大,使用mysql数据库进行数据存储和查询时很慢,所以让我调研一下时序数据库,通过调研和了解时序数据库在海量数据的读取和写出都比关系型数据库和NoSql快很多,有人做过mysql和influxDB对比,存储1000万条数据mysql要7分多钟,influxDB只需2分多钟,从1000万条数据读10000条所需数据mysql要6秒多,influxDB只需0.22秒多


这一个系列是针对SRCC公司的海量传感器数据的存储及处理探索。

因为得到的传感器数据几乎都是时序数据,即一个时间戳为主,其它为value的键值对形式,常见的MySQL等关系型数据库不适用。

在时序数据库方面,InfluxDB应该是比较成熟的一款了,所以在此尝试用InfluxDB来解决这一(伪)需求,至于能完善到哪种程度,就走着看吧…

InfluxDB其实包括了时序数据的上下游:

Telegraf(收集数据) —> InfluxDB(存储数据) —> Chronograf(显示数据) —>Kapacitor(处理数据)

image.png

此文先是安装了InfluxDB和Chronograf,因为我是安装完了InfluxDB才发现这是一个上下游产业的。。。

1.1 下载

在 官方下载:https://portal.influxdata.com/downloads/ 选Windows版,可能需要翻墙。

image.png

下载后是一个压缩包,直接解压到你想安装的目录下就行了,按照惯例,路径最好别有中文,虽然我不知道有没有关系,但没有中文肯定是没问题的。

这个和大部分的Linux软件一样,解压完就是可以直接打开使用,不需要安装过程,解压完目录如下,但是还需要配置一下influxdb.conf文件才行:
image.png

1.2 配置

修改influxdb.conf文件,主要是三处地址,其它我没改动

image.png

看它的注释也大概可以看出来,这几个目录的含义了,自己新建三个文件夹好了。配置完成,保存修改。

InfluxDB 的数据存储主要有三个目录。默认情况下是 meta, wal 以及 data 三个目录,服务器运行后会自动生成。

meta 用于存储数据库的一些元数据,meta 目录下有一个 meta.db 文件。

wal 目录存放预写日志文件,以 .wal 结尾。

data 目录存放实际存储的数据文件,以 .tsm 结尾。

1.3 启动测试

此时,双击influxd.exe就好了,这是数据库连接,运行后,会出现一个命令行界面,而且是一直在运行,这是对的,因为一旦这个进程停止了,就可能是数据库连接断了,就无法操作数据库了。
image.png

在上面运行的基础上,再双击influx.exe,就会出现下面这样的数据库界面了,有一点点MySQL基础的同学应该对这个界面都不陌生吧。
image.png

在这也是一样,也可以尝试一些语句

show databases
create database mydb
use mydb
show measurements   # measurements相当于的SQL中的tables
show series #看表
新建表和插入数据

新建表没有具体的语法,只是增加第一条数据时,会自动建立表

insert results,hostname=index1 value=1
> insert results,hostname=index1 value=1
> select * from results
name: results
time                hostname value
----                -------- -----
1555576798455199200 index1   1
>

results代表表名,hostname是索引,value是具体的字段,默认会有time字段,也可以自己设定输入的时间

这里的时间看不懂,可以设置一下时间显示格式

precision rfc3339
> precision rfc3339
> select * from results
name: results
time                         hostname value
----                         -------- -----
2019-04-18T08:39:58.4551992Z index1   1
>
查询数据

表名有点号时,输入双引号
image.png

和sql语法相同,区别:

measurement 数据库中的表

points 表里面的一行数据,Point由时间戳(time)、数据(field)、标签(tags)组成。

用户管理
  • 显示所有用户:
show users
> show users
user admin
---- -----
>
  • 新增用户:
--普通用户
create user "user" with password 'user'
--管理员用户
create user "admin" with password 'admin' with all privileges
  • 删除用户
drop user "user"
> show users
user admin
---- -----
> create user "user" with password 'user'
> create user "admin" with password 'admin' with all privileges
> show users
user  admin
----  -----
user  false
admin true
> drop user "user"
> show users
user  admin
----  -----
admin true
>

可以参见 InfluxDB官方新手引导:https://docs.influxdata.com/influxdb/v1.7/introduction/getting-started/

1.4 Telegraf 安装配置

和上面一样,只要下载安装就行了。

在启动前,先设置一下日志文件目录,打开telegraf.conf文件,将此目录修改为自己的目录路径就行了(这个路径是自己新建的,原本不存在),其他的不要动:
image.png

启动测试也是一样,双击telegraf.exe就启动了。

只配置这一个文件的时候,我启动后,命令行窗口打开一会儿就自动关闭了,于是我还是去看了一下官方的指导:Getting started with Telegraf

原来在真正使用Telegraf 时,是要设置 input 和 output 地址的,于是照着官方的指导:先创建一个配置文件,(为防止覆盖原始配置文件,我命名为telegraf_2.conf),指定的输入为 cpu 和 内存(mem)状态,指定输出为 influxDB。

telegraf -sample-config -input-filter cpu:mem -output-filter influxdb > telegraf_2.conf

然后再次启动,当然,在这之前要先启动influxdb:

telegraf --config telegraf_2.conf

image.png

这里要是成功的话,应该会在influxdb中看到telegraf的东西,去看看:
image.png

ok,telegraf成功。

1.5 Chronograf 安装

要使用web管理需要下载Chronograf,下载完直接解压,双击exe程序,在浏览器输入http://localhost:8888/,一开始登录要账户密码,我都用admin就进去了。
image.png

在这一步,我选择Add Connection后,出来的是一个Dashboards界面,要你选择你想创建的面板,随便选了几个自己认识的。。直接下一步,到了如下界面:
image.png

依然是凭着感觉填了,然后continue,然后。。。后面好像就结束了。

就这么稀里糊涂的选择完了Chronograf,然后再在浏览器重新输入http:\\localhost:8888,即可进入Chronograf界面。

image.png

参考:https://blog.csdn.net/qq_41059320/article/details/84231476
https://blog.csdn.net/xiaocxyczh/article/details/78682211
https://blog.csdn.net/SwTesting/article/details/82700023
https://blog.csdn.net/u012831077/article/details/82526038

https://blog.csdn.net/zuozewei/article/details/82929429

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

[598]Windows版InfluxDB及相关软件安装与配置 的相关文章

随机推荐

  • MATLAB —— 低通滤波器设计与信号滤波

    百度百科 简介 低通滤波器是容许低于截止频率的信号通过 但高于截止频率的信号不能通过的电子滤波装置 1 提取滤波器 系数矩阵 打开工具 MATLAB APP Filter Designer 参数设置 滤波器类型 Response Type
  • 爬虫实例——某翻译网站参数sign的构造

    1 网页分析 该翻译网站为进行Ajax加载的网站 针对这种网页的爬取 一般有两种方式 使用Selenium等模拟浏览器的方式进行爬取 这种方式实现起来较为简单 但是爬取速度相对较慢 直接对网站的接口进行请求 爬取速度相对较快 但是某些网站的
  • 7 125 kHz RFID技术

    ATA5577C应答器芯片 芯片性能和电路组成 主要技术性能 低功耗 低工作电压 非接触能量供给和读 写数据 工作频率范围为100 150 kHz EEPROM存储器容量为363位 分为11块 每块33位 具有7块用户数据 每块32位 共2
  • 算法分析02--分治法

    3 分治法 3 1递归 递归是指子程序 或函数 直接调用自己或通过一系列调用语句间接调用自己 是一种描述问题和解决问题的常用方法 使用递归技术往往使函数的定义和算法的描述简洁且易千理解 递归有两个基本要素 边界条件 即确定递归到何时终止 也
  • FASTAI and Fine-Tuning BERT with FastAI

    这是一篇笔记类型文章 主要是从新学习一下fastai 和实践 pytorch pretrained BERT 和 pytorch transformers 对接fastai 后简洁快速实现bert模型的训练和执行任务 我还是一个小白 大佬看
  • python Elasticsearch 排序

    sort 与query是同级的 Elasticsearch python sort sort score order desc query function score query match all script score lang p
  • 接口报错之number值过大问题

    number的最大的值为2的53次方 9007199254740992 16位 当你传入的参数为Number类型时候超过16位 js就识别不了 接口会出现错误的情况 可以直接改成字符串就好了 1 JavaScript中所有的数字 无论是整数
  • 合工大 编译原理 实验二 LL1 自动生成M[A,a]

    实验目的 通过完成预测分析法的语法分析程序 了解预测分析法和递归子程序法的区 别和联系 使学生了解语法分析的功能 掌握语法分析程序设计的原理和构造方 法 训练学生掌握开发应用程序的基本方法 有利于提高学生的专业素质 为培 养适应社会多方面需
  • C++ *和&

    简单理解 是指向内存的地址变量 是取变量的地址 介绍参见 https www cnblogs com mr stn p 9037773 html简介
  • spring boot项目显示3行日志错误,内置tomcat不可使用

    spring boot项目显示3行日志错误 内置tomcat不可使用 首先这中错误是只显示三行 第一种方法是没有用spring boot starter web 在pom中将这个依赖放在第一个 第二种方法是继承ServletInitiali
  • 详解如何将python3.6软件的py文件打包成exe程序

    本文来源于公众号 csdn2299 喜欢可以关注公众号 程序员学府 这篇文章主要介绍了详解如何将python3 6软件的py文件打包成exe程序 小编觉得挺不错的 现在分享给大家 也给大家做个参考 一起跟随小编过来看看吧 在我们完成一个Py
  • Codeforces Round 867 (Div. 3)(A题到E题)

    链接 Dashboard Codeforces Round 867 Div 3 Codeforces 头一次div3做出来四题 第五题也差临门一脚 赛后看到别人e题跟自己几乎一样的思路肠悔青了 还得练才行 A TubeTube Feed 签
  • 网络系列--如何理解网络“软化”?简要整理分析网络软化的赋能技术。

    文章目录 对网络软化的理解 SDN NFV NFV与SDN简单对比 如何理解网络 软化 简要整理分析网络软化的赋能技术 对网络软化的理解 在互联网飞速发展的今天 通信网络规模爆发式的增长以及客户对网络性能需求的多样性 对网络的灵活性和敏捷性
  • 【0day】复现时空智友企业流程化管控系统SQL注入漏洞

    注 该文章来自作者日常学习笔记 请勿利用文章内的相关技术从事非法测试 如因此产生的一切不良后果与作者无关 目录 一 漏洞描述 二 影响版本 三 资产测绘 四 漏洞复现 一 漏洞描
  • cocos2d-x实例学习(8)之CCJumpTo和CCJumpBy

    CCJumpTo和CCJumpBy概念 CCJumpTo 把某一CCSprite跳到某一位置 CCJumpBy 把某一CCSprite跳起一段距离 它有一个方法reverse 它让对象按原路径返回 CCJumpTo和CCJumpBy示例 创
  • react中context的使用详解

    先说一说context是干什么的 跨层级通信 一般组件通信的方法都是通过props来传递 不过这种方法当有了第三级或往后孙孙组件的时候就显得比较繁琐 以及不好修改 这时我们可以使用context来管理这些数据 不管多少层级都能让想要使用这些
  • 线程函数不能为类成员函数_GPU编程2CUDA核函数和线程配置

    CUDA核函数 在GPU上执行的函数称为CUDA核函数 Kernel Function 核函数会被GPU上多个线程执行 我们可以在核函数中获取当前线程的ID CUDA核函数的定义 global void addKernel int c co
  • 堆栈桢的生成原理

    摘要 那么Windbg分析Dump时 会如何推理堆栈过程呢 如果每个函数都是有标准的push ebp 那么按照ebp递推就可以了 否这就只能用其他方法分析 比如看看堆栈里某个地址是不是函数返回地址 该地址属于某个模块的代码段 这样就可以确定
  • mac系统下面调用brew报错core_ext/kernel_require.rb:55:in `require': cannot load such file

    mac系统下面调用brew报错 如下所示 usr local Homebrew Library Homebrew vendor portable ruby 2 3 7 lib ruby 2 3 0 rubygems core ext ker
  • [598]Windows版InfluxDB及相关软件安装与配置

    公司在做一个工业监控系统 虽然数据采集点并不算多但是数据量积累下来也非常大 使用mysql数据库进行数据存储和查询时很慢 所以让我调研一下时序数据库 通过调研和了解时序数据库在海量数据的读取和写出都比关系型数据库和NoSql快很多 有人做过