InfluxDB數據庫是一款數據儲存庫,可以幫助用戶儲存開源的時間序列數據,可以幫助用戶處理高寫入和查詢負載,時間序列是現在非常流行的數據庫類別,可以幫助用戶對數據庫進行管理,提供基礎設施和一些輔助功能,可以對應用進行監測,物聯網分析等等。
軟件介紹
InfluxDB是一個開源的時間序列數據存儲,旨在處理高寫入和查詢負載,時間序列是目前增長最快的數據庫類別,而InfluxDB的出現是為了確保企業能夠跟上,InfluxDB提供基礎設施和應用監測、物聯網監測和分析等。
軟件功能
用于拉動和發送指標的集成輸入和輸出插件
實時監測
自動化
開放和可擴展的架構
Chronograf(可視化工具,帶有預制的儀表盤,具有網絡監控的標準基線
Kapacitor(用于處理、監測和警報的規則引擎
安裝部署
InfluxDB是一個時間序列數據存儲,和一般的數據庫不同,軟件安裝和部署方法也有一定的區別, 很多的用戶不知道軟件的安裝方法,下面小編為大家帶來介紹,讓大家都可以順利的安裝軟件。
#rpm -ivh influxdb-1.1.0.x86_64.rpm
#systemctl enable influxdb
#systemctl start influxdb
注:本示例是在centos7/rhel7中配置的服務,如果在rhel6下,可以使用service進行服務配置和啟動。
2、命令行下創建及查詢
通過influx命令進行管理,可以使用如下命令創建數據庫:
> CREATE DATABASE "testDB"
> show databases //查詢當前的所有數據庫
> show databases
name: databases
---------------
name
_internal
testDB
> use testDB //使用某個數據庫
建庫的操作可以發現非常類似于mysql下的操作。而在influxdb下沒有細分的表的概念,influxdb下的表在插入數據庫的時候自動會創建。可以通過SHOW measurements命令查看所有的表,這個類似于mysql下的show tables; 。
> INSERT cpu,host=serverA,region=us_west value=0.64 //在cpu表中插入相關的數據
> SELECT * FROM cpu ORDER BY time DESC LIMIT 3 //查詢最近的三條數據
> SELECT * FROM /.*/ LIMIT 1 //正則表達式查詢
> delete from cpu where time=1480235366557373922 //刪除某條數據
> DROP MEASUREMENT "measurementName" //刪除表
update更新語句沒有,不過有alter命令,在influxdb中,刪除操作用和更新基本不用到 。在針對數據保存策略方面,有一個特殊的刪除方式,這個后面再提。
關于用戶的操作如下:
#顯示用戶
SHOW USERS
#創建用戶
CREATE USER "username" WITH PASSWORD 'password'
#創建管理員權限的用戶
CREATE USER "username" WITH PASSWORD 'password' WITH ALL PRIVILEGES
#刪除用戶
DROP USER "username"
influxdb的權限設置比較簡單,只有讀、寫、ALL幾種。默認情況下,influxdb類似與mongodb,是不開啟用戶認證的,可以修改其 conf文件,配置http塊內容如下:
[http]
enable = true
bind-address = ":8086"
auth-enabled = true # 開啟認證
使用場景
時序數據是基于時間的一系列數據,每個數據都包含時間的坐標,用戶可以將這些數據點連成線,然后找出數據的規律性、趨勢性,還進行數據分析等等操作。所以時序數據的使用場景也和這些有關,下面小編為大家帶來使用場景介紹。
所有有時序數據產生,并且需要展現其歷史趨勢、周期規律、異常性的,進一步對未來做出預測分析的,都是時序數據庫適合的場景。
在工業物聯網環境監控方向,百度天工的客戶就遇到了這么一個難題,由于工業上面的要求,需要將工況數據存儲起來??蛻裘總€廠區具有20000個監測點,500毫秒一個采集周期,一共20個廠區。這樣算起來一年將產生驚人的26萬億個數據點。假設每個點50Byte,數據總量將達1P(如果每臺服務器10T的硬盤,那么總共需要100多臺服務器)。這些數據不只是要實時生成,寫入存儲;還要支持快速查詢,做可視化的展示,幫助管理者分析決策;并且也能夠用來做大數據分析,發現深層次的問題,幫助企業節能減排,增加效益。最終客戶采用了百度天工的時序數據庫方案,幫助他解決了難題。
在互聯網場景中,也有大量的時序數據產生。百度內部有大量服務使用天工物聯網平臺的時序數據庫。舉個例子,百度內部服務為了保障用戶的使用體驗,將用戶的每次網絡卡頓、網絡延遲都會記錄到百度天工的時序數據庫。由時序數據庫直接生成報表以供技術產品做分析,盡早的發現、解決問題,保證用戶的使用體驗。
查詢語句
influxdb 數據交互基于 http請求
influxdb 對大小寫不敏感,對單雙引號敏感
missing fields dropped=0
原因是字符串中含有換行符\n, 導致寫入失敗
使用說明
通過軟件可以對時序數據進行操作, 很多的用戶不知道軟件的使用方法,下面小編為大家帶來對應的方法介紹,快來看看吧。
增
向數據庫中插入數據。
通過命令行
這樣,數據庫插入數據成功。
Line Protocol格式:寫入數據庫的Point的固定格式。
在上面的兩種插入數據的方法中都有這樣的一部分:
test,host=127.0.0.1,monitor_name=test count=1
其中:
test:表名;
host=127.0.0.1,monitor_name=test:tag;
count=1:field
查
查詢數據庫中的數據。
通過命令行
數據保存策略(Retention Policies)
influxDB是沒有提供直接刪除數據記錄的方法,但是提供數據保存策略,主要用于指定數據保留時間,超過指定時間,就刪除這部分數據。
查看當前數據庫Retention Policies
創建新的Retention Policies
create retention policy "rp_name" on "db_name" duration 3w replication 1 default
rp_name:策略名
db_name:具體的數據庫名
3w:保存3周,3周之前的數據將被刪除,influxdb具有各種事件參數,比如:h(小時),d(天),w(星期)
replication 1:副本個數,一般為1就可以了
default:設置為默認策略
修改Retention Policies
alter retention policy "rp_name" on "db_name" duration 30d default
刪除Retention Policies
drop retention policy "rp_name"
精品推薦
-
Qlik Sense
詳情 -
Power BI Desktop
詳情 -
MongoDB Compass軟件
詳情 -
Navicat Premium 15
詳情 -
微軟Access2019免產品密鑰激活破解版
詳情 -
Power Designer
詳情 -
mysql數據庫批量實體CS類導出工具
詳情 -
Navicat全系列注冊碼生成器
詳情 -
Access數據庫引擎
詳情 -
SQL2005開發版
詳情 -
FileMaker Pro Advanced
詳情 -
Navicat Premium 16永久激活版
詳情 -
Stellar Repair for SQLite(SQLite數據庫恢復)破解版
詳情 -
Microsoft Office Access database Engine免安裝版
詳情 -
IBM SPSS Statistics22
詳情 -
ApexSQL Log
詳情
-
1 DBC2000
裝機必備軟件
網友評論