CentOS7安裝時序數(shù)據(jù)庫InfluxDB2簡易教程
InfluxDB是一個開源的時間序列數(shù)據(jù)庫,它專門用于處理大規(guī)模的時間序列數(shù)據(jù)。時間序列數(shù)據(jù)是在特定時間點上收集的數(shù)據(jù),例如傳感器數(shù)據(jù)、監(jiān)控數(shù)據(jù)、應(yīng)用程序日志等。
InfluxDB設(shè)計用于高效地存儲、查詢和分析大量的時間序列數(shù)據(jù)。它具有高性能、可擴展性和靈活性的特點。它支持快速的寫入和讀取操作,并提供強大的時間序列數(shù)據(jù)查詢功能。
InfluxDB提供了一種靈活的數(shù)據(jù)模型,可以輕松地存儲和查詢不同種類的時間序列數(shù)據(jù)。它支持標簽(tags)和字段(fields)的概念,用于對時間序列數(shù)據(jù)進行標識和分類。標簽可以用于快速篩選和聚合數(shù)據(jù),而字段則用于存儲實際的測量值。
InfluxDB還提供了一套豐富的API和工具,用于數(shù)據(jù)的導入、導出和可視化。它與許多常見的數(shù)據(jù)處理和可視化工具(如Grafana)集成良好,方便用戶使用。
總之,InfluxDB是一個用于存儲和查詢時間序列數(shù)據(jù)的強大工具,適用于各種應(yīng)用場景,包括監(jiān)控、物聯(lián)網(wǎng)、日志分析等。
InfluxDB和InfluxDB2是兩個不同版本的時序數(shù)據(jù)庫,它們有以下區(qū)別:
- 數(shù)據(jù)存儲結(jié)構(gòu):InfluxDB1采用的是基于TSM(The Storage Machine)的存儲引擎,而InfluxDB2則采用了新的存儲引擎,稱為InfluxDB IOx。InfluxDB IOx引擎支持更高的寫入和查詢性能,以及更高的數(shù)據(jù)壓縮比。
- 數(shù)據(jù)模型:InfluxDB1采用的是tag和field的模型,tag用于標識數(shù)據(jù)的維度,field用于存儲數(shù)據(jù)的值。而InfluxDB2引入了新的概念,如bucket、measurement和tag。Bucket類似于數(shù)據(jù)庫的概念,Measurement類似于表,Tag和Field的概念與InfluxDB1相同。
- 查詢語言:InfluxDB1使用的查詢語言是InfluxQL,而InfluxDB2引入了新的查詢語言,稱為Flux。Flux具有更強大和靈活的查詢功能,支持更復(fù)雜的數(shù)據(jù)操作和分析。
- 可擴展性:InfluxDB2在可擴展性方面進行了改進,支持更大規(guī)模的數(shù)據(jù)集和更多的并發(fā)查詢。它使用了分布式計算模型,可以水平擴展,提高系統(tǒng)的性能和容錯性。
綜上所述,InfluxDB2相對于InfluxDB1具有更好的性能、更靈活的數(shù)據(jù)模型和查詢語言,更適合處理大規(guī)模的時序數(shù)據(jù),下面我們來介紹下載并安裝最新版本的InfluxDB2。
一、下載安裝InfluxDB2
下載InfluxDB2安裝包 https://github.com/influxdata/influxdb/releases ,這里選擇rpm安裝包 influxdb2-2.7.3-1.x86_64.rpm ,可以直接在服務(wù)器執(zhí)行 :
wget https://dl.influxdata.com/influxdb/releases/influxdb2-2.7.3-1.x86_64.rpm
在服務(wù)器,切換到influxdb2-2.7.3-1.x86_64.rpm文件所在目錄,執(zhí)行安裝命令。
yum localinstall -y ./influxdb2-2.7.3-1.x86_64.rpm
執(zhí)行結(jié)果如下,Complete!表示安裝成功。
Loaded plugins: fastestmirror
Examining ./influxdb2-2.7.3-1.x86_64.rpm: influxdb2-2.7.3-1.x86_64
Marking ./influxdb2-2.7.3-1.x86_64.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package influxdb2.x86_64 0:2.7.3-1 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
=================================================================================================================================================================================================================================================
Package Arch Version Repository Size
=================================================================================================================================================================================================================================================
Installing:
influxdb2 x86_64 2.7.3-1 /influxdb2-2.7.3-1.x86_64 99 M
Transaction Summary
=================================================================================================================================================================================================================================================
Install 1 Package
Total size: 99 M
Installed size: 99 M
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : influxdb2-2.7.3-1.x86_64 1/1
Created symlink from /etc/systemd/system/influxd.service to /usr/lib/systemd/system/influxdb.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/influxdb.service to /usr/lib/systemd/system/influxdb.service.
Verifying : influxdb2-2.7.3-1.x86_64 1/1
Installed:
influxdb2.x86_64 0:2.7.3-1
Complete!
啟動influxdb服務(wù)。
sudo systemctl start influxdb
查看influxdb服務(wù)啟動狀態(tài),結(jié)果顯示Active: active (running)表示正在運行,服務(wù)啟動成功。
sudo systemctl status influxdb
設(shè)置開機啟動。
sudo systemctl enable influxdb
停止influxdb服務(wù)。
sudo systemctl stop influxdb
二、配置InfluxDB2
第一步我們安裝并啟動好Influxdb數(shù)據(jù)庫之后,接下來就是配置數(shù)據(jù)庫,默認是沒有用戶名密碼的,我們可以通過配置界面進行初始化配置。
訪問InfluxDB2管理界面,ip:8086 ,將會出現(xiàn)以下界面:
點擊 GET STARTED按鈕進入到用戶配置界面,填寫用戶名/密碼,Organization Name(工作區(qū)組織名稱),填寫B(tài)ucket Name,Bucket相當于Mysql數(shù)據(jù)庫的庫名。
點擊 CONTINUE按鈕之后會出現(xiàn)一個api token記住這個token,在api調(diào)用時需要用到。
點擊 QUICK START 按鈕,就可以進入到Influxdb后臺管理界面了。
請注意,InfluxDB2的高可用集群功能是收費的。在InfluxDB1中,可以借助使用influxdb-proxy的功能來實現(xiàn)集群及負載均衡。
InfluxDB Proxy 是一個用于 InfluxDB 的代理服務(wù)器,它能夠處理代理讀寫請求,并將請求轉(zhuǎn)發(fā)到 InfluxDB 服務(wù)器。
InfluxDB Proxy 提供了以下功能:
- 負載均衡:能夠?qū)⒆x寫請求分發(fā)到多個 InfluxDB 服務(wù)器上,實現(xiàn)負載均衡,提高系統(tǒng)的容錯性和性能。
- 緩存:能夠緩存查詢結(jié)果,減輕 InfluxDB 服務(wù)器的負載,并提高查詢性能。
- 查詢優(yōu)化:能夠?qū)Σ樵冞M行優(yōu)化,例如聚合、剪裁和壓縮數(shù)據(jù),提供更高效的查詢結(jié)果。
- 安全性:提供用戶身份驗證和授權(quán)功能,確保只有經(jīng)過授權(quán)的用戶才能訪問 InfluxDB 服務(wù)器。
總之,InfluxDB Proxy 是一個非常有用的工具,可以提高 InfluxDB 的性能和可用性,并提供額外的安全和查詢優(yōu)化功能。