99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

LabVIEW操作InfluxDB數(shù)據(jù)庫(kù)應(yīng)用特點(diǎn)和原理概念

華穗科技 ? 來(lái)源:華穗科技 ? 2024-04-12 12:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在測(cè)試系統(tǒng)中,數(shù)據(jù)存儲(chǔ)通常是不可或缺的一環(huán),面對(duì)少量數(shù)據(jù)時(shí),我們可以采用本地文件保存的方式,進(jìn)行存儲(chǔ)查看;而面對(duì)大量實(shí)時(shí)數(shù)據(jù)時(shí),例如在監(jiān)控場(chǎng)景,如運(yùn)維和IOT物聯(lián)網(wǎng))領(lǐng)域,通常會(huì)有監(jiān)控傳感器和系統(tǒng)的性能指標(biāo)等數(shù)據(jù)需要存儲(chǔ),這時(shí)對(duì)于時(shí)序型數(shù)據(jù)庫(kù)就有了很好的應(yīng)用場(chǎng)景。小編近期使用到的一種時(shí)序型數(shù)據(jù)庫(kù)——InfluxDB,對(duì)于InfluxDB的集成官方有一組API和工具,但大多適用于文本語(yǔ)言,查詢?cè)S多資料,關(guān)于LabVIEW對(duì)此數(shù)據(jù)庫(kù)的操作教程甚少,所以今天小編分享下使用LabVIEW實(shí)現(xiàn)對(duì)InfluxDB數(shù)據(jù)庫(kù)的連接、寫(xiě)入、查詢等操作。

本文分享:

InfluxDB介紹

LabVIEW Client of InfluxDBV2.x教程

一、InfluxDB介紹

InfluxDB 是一個(gè)用于存儲(chǔ)和分析時(shí)間序列數(shù)據(jù)的開(kāi)源數(shù)據(jù)庫(kù),由 Golang 語(yǔ)言編寫(xiě),過(guò)多的概念小編在這里就不多贅述了,主要介紹下應(yīng)用到的特點(diǎn)和原理概念。進(jìn)一步了解可查看官方說(shuō)明文檔。

1、特點(diǎn)

內(nèi)置 HTTP 接口,使用方便

數(shù)據(jù)可以打標(biāo)記,這樣查詢可以很靈活

類(lèi) SQL 的查詢語(yǔ)句

安裝管理很簡(jiǎn)單,并且讀寫(xiě)數(shù)據(jù)很高效

能夠?qū)崟r(shí)查詢,數(shù)據(jù)在寫(xiě)入時(shí)被索引后就能夠被立即查出

2、原理概念

寫(xiě)入?yún)f(xié)議:InfluxDB 行協(xié)議

InfluxDB的行協(xié)議是一種寫(xiě)入數(shù)據(jù)點(diǎn)到InfluxDB的文本格式。必須要是這樣的格式的數(shù)據(jù)點(diǎn)才能被Influxdb解析和寫(xiě)入成功,當(dāng)然除非你使用一些其他服務(wù)插件。一行數(shù)據(jù)由4種元素構(gòu)成:measurement(測(cè)量名稱)、Tag Set(標(biāo)簽集)、Field Set(字段集)、Timestamp(時(shí)間戳)。

f4f28d50-f883-11ee-a297-92fbcf53809c.png

(1)measurement(測(cè)量名稱)

必需

測(cè)量的名稱。每個(gè)數(shù)據(jù)點(diǎn)都必須聲明自己是哪個(gè)測(cè)量里面,不可省略。

大小寫(xiě)敏感

不可以下劃線_開(kāi)頭

(2)Tag Set(標(biāo)簽集)

標(biāo)簽應(yīng)該用在一些值的范圍有限的,不太會(huì)變動(dòng)的屬性上。比如傳感器的類(lèi)型和id等等。在InfluxDB中一個(gè)Tag相當(dāng)于一個(gè)索引。給數(shù)據(jù)點(diǎn)加上Tag有利于將來(lái)對(duì)數(shù)據(jù)進(jìn)行檢索。但是如果索引太多了,就會(huì)減慢數(shù)據(jù)的插入速度。

可選

鍵值關(guān)系使用=表示

多個(gè)鍵值對(duì)之間使用英文逗號(hào)分隔

標(biāo)簽的鍵和值都區(qū)分大小寫(xiě)

標(biāo)簽的鍵不能以下劃線_開(kāi)頭

鍵的數(shù)據(jù)類(lèi)型:字符串

值的數(shù)據(jù)類(lèi)型:字符串

(3)Field Set(字段集)

必需

一個(gè)數(shù)據(jù)點(diǎn)上所有的字段鍵值對(duì),鍵是字段名,值是數(shù)據(jù)點(diǎn)的值。

一個(gè)數(shù)據(jù)點(diǎn)至少要有一個(gè)字段。

字段集的鍵是大小寫(xiě)敏感的。

字段

鍵的數(shù)據(jù)類(lèi)型:字符串

值的數(shù)據(jù)類(lèi)型:浮點(diǎn)數(shù)|整數(shù)|無(wú)符號(hào)整數(shù)|字符串|布爾值

(4)Timestamp(時(shí)間戳)

可選

數(shù)據(jù)點(diǎn)的Unix時(shí)間戳,每個(gè)數(shù)據(jù)點(diǎn)都可以指定自己的時(shí)間戳。

如果時(shí)間戳沒(méi)有指定。那么InfluxDB就使用當(dāng)前系統(tǒng)的時(shí)間戳。

數(shù)據(jù)類(lèi)型:Unix timestamp

如果你的數(shù)據(jù)里的時(shí)間戳不是以納秒為單位的,那么需要在數(shù)據(jù)寫(xiě)入時(shí)指定時(shí)間戳的精度。

協(xié)議中的數(shù)據(jù)類(lèi)型及其格式

空格:行協(xié)議中的空格決定了InfluxDB如何解釋數(shù)據(jù)點(diǎn)。第一個(gè)未轉(zhuǎn)義的空格將測(cè)量值&Tag Set(標(biāo)簽集)與Field Set(字段集)分開(kāi)。第二個(gè)未轉(zhuǎn)義空格將Field Set(字段級(jí))和時(shí)間戳分開(kāi)。

Float(浮點(diǎn)數(shù)):IEEE-754標(biāo)準(zhǔn)的64位浮點(diǎn)數(shù)。這是默認(rèn)的數(shù)據(jù)類(lèi)型。

Integer(整數(shù)):有符號(hào)64位整數(shù)。需要在數(shù)字的尾部加上一個(gè)小寫(xiě)數(shù)字i。

UInteger(無(wú)符號(hào)整數(shù)):無(wú)符號(hào)64位整數(shù)。需要在數(shù)字的尾部加上一個(gè)小寫(xiě)數(shù)字u。

String(字符串):普通文本字符串,長(zhǎng)度不能超過(guò)64KB

Boolean(布爾值)

Unix Timestamp(Unix時(shí)間戳)

注釋:以井號(hào)#開(kāi)頭的一行會(huì)被當(dāng)做注釋。

二、安裝部署,初始化配置

安裝和部署方式不唯一,這里分享下小編使用到的方法:

數(shù)據(jù)庫(kù)版本:InfluxDB OSSv2.7.1

系統(tǒng)環(huán)境:Win10專業(yè)版

安裝

安裝 InfluxDB |InfluxDB OSS v2 文檔 (influxdata.com)

從以上官網(wǎng)鏈接下載后會(huì)看到一個(gè).zip文件,將其解壓。

部署

打開(kāi)cmd,輸入‘influxd.exe的文件地址’,回車(chē)。

f506fa9c-f883-11ee-a297-92fbcf53809c.png

瀏覽器打開(kāi)http://localhost:8086。

初始化配置

點(diǎn)擊GET STARTED 按鈕,進(jìn)入下一個(gè)步驟(添加用戶)。

可以留意下clone你的Token、Organizition和organization id(客戶端連接時(shí)要用)。Bucket用于存放數(shù)據(jù)的籃子相當(dāng)于Database。

?API Token 是干什么用的

簡(jiǎn)單來(lái)說(shuō),influxdb 會(huì)向外暴露一套HTTP API。所以,在InfluxDB中,對(duì)權(quán)限的管理主要就體現(xiàn)在API的Tokens上??蛻舳藭?huì)將 token放到http的請(qǐng)求頭上,influxdb 服務(wù)端就根據(jù)客戶端發(fā)來(lái)的請(qǐng)求頭部的token,來(lái)判斷你能不能對(duì)某個(gè)存儲(chǔ)桶讀寫(xiě),能不能刪除存儲(chǔ)桶,創(chuàng)建儀表盤(pán)等。

配置完成

Token、Organization忘記也可從這里查詢:

f522ca42-f883-11ee-a297-92fbcf53809c.png

三、程序Demo介紹

依賴工具包:i3 JSON

目前實(shí)現(xiàn)了連接、錯(cuò)誤分析處理、寫(xiě)入和查詢功能。上文有介紹到InfluxDB內(nèi)置 HTTP 接口,所以使用LabVIEW中HTTP客戶端的API進(jìn)行實(shí)現(xiàn)。

以下介紹均以 ‘步驟功能:語(yǔ)言(程序Demo截圖)’形式介紹

1、連接

基本身份驗(yàn)證:‘url’api/v2/authorizations

f53c29c4-f883-11ee-a297-92fbcf53809c.png

f55da090-f883-11ee-a297-92fbcf53809c.png

Token驗(yàn)證:Authorization: Token INFLUX_API_TOKEN

f56cf702-f883-11ee-a297-92fbcf53809c.png

2、數(shù)據(jù)寫(xiě)入

先將measurement(測(cè)量名稱)、field name(字段名)、precision(時(shí)間精度)寫(xiě)入:

f59391b4-f883-11ee-a297-92fbcf53809c.png

其次將field values(數(shù)據(jù))、time stamp(時(shí)間戳)轉(zhuǎn)換為字符串的格式,組成行協(xié)議寫(xiě)入:

f5dd7b76-f883-11ee-a297-92fbcf53809c.png

f5f30900-f883-11ee-a297-92fbcf53809c.png

最后發(fā)送寫(xiě)入數(shù)據(jù)的報(bào)文請(qǐng)求:

f6140182-f883-11ee-a297-92fbcf53809c.png

3、查詢

以Flux語(yǔ)法查詢,查詢語(yǔ)句的釋議太多,有需要的還需自行查看Query data with Flux | InfluxDB OSS v2 Documentation (influxdata.com)

這里簡(jiǎn)單摘一點(diǎn):

from(bucket: "example-bucket") #需要查詢的bucket

|> filter(fn: (r) => r._measurement == "example-measurement" and r.tag == "example-tag") #measurement名 tag名
|> filter(fn: (r) => r._field == "example-field")


|> range(start:-1h) #相對(duì)時(shí)間范圍 (最近1小時(shí))
|> range(start:-1h, stop: -10m) #最近1h到最近10分鐘

|> aggregateWindow(every: 1s, fn: last, createEmpty: false) #數(shù)據(jù)可視化

這里實(shí)現(xiàn)了兩種方式查詢:聚合和非聚合。區(qū)別在于發(fā)送的header不一樣,如下圖:

f62b4d9c-f883-11ee-a297-92fbcf53809c.png

f640651a-f883-11ee-a297-92fbcf53809c.png

f66291b2-f883-11ee-a297-92fbcf53809c.png

4、錯(cuò)誤處理

根據(jù)官網(wǎng)API幫助文檔中API操作返回的HTTP響應(yīng)代碼,解析Body和Headers文件而設(shè)計(jì)。(一般代碼≥400為錯(cuò)誤)

f679f05a-f883-11ee-a297-92fbcf53809c.png

f68b9de6-f883-11ee-a297-92fbcf53809c.png

四、內(nèi)容總結(jié)

1.InfluxDB的特點(diǎn)和原理概念

2. 安裝部署及初始化配置InfluxDB

3.使用LabVIEW實(shí)現(xiàn)對(duì)InfluxDB的連接、寫(xiě)入、查詢、錯(cuò)誤分析的操作

審核編輯:黃飛

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • LabVIEW
    +關(guān)注

    關(guān)注

    2002

    文章

    3670

    瀏覽量

    336198
  • 數(shù)據(jù)庫(kù)
    +關(guān)注

    關(guān)注

    7

    文章

    3929

    瀏覽量

    66304
  • UNIX
    +關(guān)注

    關(guān)注

    0

    文章

    296

    瀏覽量

    42347

原文標(biāo)題:教程 | LabVIEW操作InfluxDB數(shù)據(jù)庫(kù)

文章出處:【微信號(hào):華穗科技,微信公眾號(hào):華穗科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    labview 數(shù)據(jù)庫(kù)操作問(wèn)題

    各位大俠,現(xiàn)在要用labview 連接數(shù)據(jù)庫(kù),進(jìn)行相關(guān)的數(shù)據(jù)庫(kù)操作,剛開(kāi)始用 LABSQL但是用了幾天發(fā)現(xiàn),使用網(wǎng)絡(luò)數(shù)據(jù)庫(kù)而且同時(shí)又幾臺(tái)客戶
    發(fā)表于 07-23 17:06

    LABVIEW中實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)表格的操作

    利用LabVIEW數(shù)據(jù)庫(kù)工具包只能操作而不能創(chuàng)建數(shù)據(jù)庫(kù),所以必須借助第三方數(shù)據(jù)庫(kù)管理系統(tǒng),比如Access,來(lái)創(chuàng)建
    發(fā)表于 06-29 21:08

    (專題)Labview 對(duì)于大數(shù)據(jù)操作 途徑:使用數(shù)據(jù)庫(kù)

    :https://bbs.elecfans.com/jishu_453402_1_1.html)有必要采用更好 的方案,使用Labview操作數(shù)據(jù)庫(kù)。故開(kāi)此貼討論這一主題:目標(biāo)是使用 ODBC ADO
    發(fā)表于 10-15 09:52

    labview 數(shù)據(jù)庫(kù)操作案例

    labview 數(shù)據(jù)庫(kù)操作案例 數(shù)據(jù)庫(kù)讀、寫(xiě)操作
    發(fā)表于 06-23 22:34

    關(guān)于Labview數(shù)據(jù)庫(kù)操作的內(nèi)存問(wèn)題

    Labview頻繁對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作,關(guān)閉連接放在最后會(huì)對(duì)內(nèi)存有影響嗎?如圖中的A和B兩種方式,事件結(jié)構(gòu)中每個(gè)分支都是對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作,圖中A
    發(fā)表于 10-12 15:27

    Labview對(duì)SQL Server數(shù)據(jù)庫(kù)連接并操作

    本帖最后由 Nemesis_ 于 2021-9-23 10:54 編輯 Labview對(duì)SQL Server數(shù)據(jù)庫(kù)連接并操作在進(jìn)行連接時(shí),輸入相應(yīng)的登錄數(shù)據(jù)庫(kù)類(lèi)型,
    發(fā)表于 09-13 14:40

    ADO和LabSQL在數(shù)據(jù)庫(kù)操作方面的應(yīng)用

    本文介紹了在Labview 中應(yīng)用ADO 控件和第三方控件LabSQL 對(duì)數(shù)據(jù)庫(kù)操作的方案,解決了Labview 中的數(shù)據(jù)庫(kù)
    發(fā)表于 08-15 10:30 ?79次下載

    LabVIEW訪問(wèn)Access數(shù)據(jù)庫(kù)的研究

    本文介紹了在LabVIEW環(huán)境下,利用NI公司的附加工具包中的數(shù)據(jù)庫(kù)接口工具包LabVIEW SQL Toolkit進(jìn)行Access數(shù)據(jù)庫(kù)訪問(wèn)的方法。該方法易于理解,
    發(fā)表于 09-03 10:05 ?57次下載

    labview狀態(tài)機(jī)下的數(shù)據(jù)庫(kù)操作_LV2012

    labview狀態(tài)機(jī)下的數(shù)據(jù)庫(kù)操作_LV2012。
    發(fā)表于 05-17 16:41 ?13次下載

    數(shù)據(jù)庫(kù)的設(shè)計(jì)概念總結(jié)

    本文檔的主要內(nèi)容詳細(xì)介紹的是數(shù)據(jù)庫(kù)的設(shè)計(jì)概念總結(jié)主要內(nèi)容包括了:1.數(shù)據(jù)庫(kù)設(shè)計(jì)概述,2.需求分析,3.概念結(jié)構(gòu)設(shè)計(jì),4.邏輯結(jié)構(gòu)設(shè)計(jì),5.數(shù)據(jù)庫(kù)
    發(fā)表于 01-09 17:29 ?13次下載
    <b class='flag-5'>數(shù)據(jù)庫(kù)</b>的設(shè)計(jì)<b class='flag-5'>概念</b>總結(jié)

    基于LABVIEW的SQL Server數(shù)據(jù)庫(kù)操作教程

    基于LABVIEW的SQL Server數(shù)據(jù)庫(kù)操作教程
    發(fā)表于 09-13 14:54 ?101次下載

    Labview數(shù)據(jù)庫(kù)登錄參數(shù)資料

    Labview數(shù)據(jù)庫(kù)登錄參數(shù)資料
    發(fā)表于 09-29 18:11 ?27次下載

    influxdb+grafana+nodemcu

    電力計(jì)量——NodeMCU+Influxdb+Grafana主要由一下幾個(gè)部分構(gòu)成:-數(shù)據(jù)庫(kù)Influxdb——開(kāi)源的時(shí)序數(shù)據(jù)庫(kù) -前端:Grafana——開(kāi)源的圖表展示 -
    發(fā)表于 12-17 18:01 ?8次下載
    <b class='flag-5'>influxdb</b>+grafana+nodemcu

    LabVIEW操作MySQL數(shù)據(jù)庫(kù)編程實(shí)例

    LabVIEW操作MySQL數(shù)據(jù)庫(kù)編程實(shí)例
    發(fā)表于 10-13 15:05 ?51次下載

    數(shù)據(jù)庫(kù)應(yīng)用及其特點(diǎn) 數(shù)據(jù)庫(kù)數(shù)據(jù)的基本特點(diǎn)

    數(shù)據(jù)庫(kù)應(yīng)用及其特點(diǎn) 數(shù)據(jù)庫(kù)數(shù)據(jù)的基本特點(diǎn)? 數(shù)據(jù)庫(kù)應(yīng)用及其
    的頭像 發(fā)表于 08-28 17:22 ?3332次閱讀