无码人妻精品一区二区三18禁,影音先锋男人AV橹橹色,污污污污污污www网站免费,日韩成人av无码一区二区三区,欧美性受xxxx狂喷水

時序數據庫查詢性能對比:InfluxDB vs. TDengine

時序數據庫查詢性能對比:InfluxDB vs. TDengine

基于 TSBS 標準數據集,TDengine Database 團隊對時序數據庫Time Series DatabaseTSDB) InfluxDB 和 TDengine 針對 TSBS 指定(ding)的 DevOps 中(zhong) cpu-only 五個(ge)場(chang)景進行(xing)了對比測試(shi)。

點擊這里,查看相(xiang)關背景介紹及軟件配置(zhi)。

在 TSBS 全部的 cpu-only 五個場景(jing)中(zhong),查詢(xun)方面,相對于 InfluxDB,場景(jing)一,TDengine查詢(xun)性(xing)能是(shi)(shi)其(qi) 1.9 ~ 37.0 倍,平均 11.3 倍,場景(jing)二(er),TDengine 查詢(xun)性(xing)能是(shi)(shi)其(qi) 1.8 ~ 34.2 倍,平均是(shi)(shi) 11.3 倍。

對于查詢性能的評估,我們使用場景一(只包含 4 天數據,這個修改與[7]中要(yao)求一致(zhi))和場景二作為基準數據集(ji)。對(dui)于 InfluxDB,我們開啟 InfluxDB  的(de)(de)(de) TSI (time series index)。在整個查詢對(dui)比中,TDengine 數據庫(ku)的(de)(de)(de)虛擬節點(dian)數量(vnodes)保持(chi)為默(mo)認(ren)的(de)(de)(de) 6 個,其他的(de)(de)(de)數據庫(ku)參數配置為默(mo)認(ren)值。

1 4,000 devices × 10 metrics查詢性能對比

由于部分類型(分類標準參見[7] )單次(ci)查(cha)(cha)詢(xun)響應(ying)時(shi)間(jian)非(fei)常短,為了更加準(zhun)確地(di)測量(liang)(liang)每個查(cha)(cha)詢(xun)場景(jing)的(de)較為穩定的(de)響應(ying)時(shi)間(jian),我(wo)(wo)們(men)將單個查(cha)(cha)詢(xun)運行次(ci)數提(ti)升(sheng)到 5,000 次(ci),然后使用(yong)  TSBS 自動統計并輸出結(jie)果(guo),最后結(jie)果(guo)是 5,000 次(ci)查(cha)(cha)詢(xun)的(de)算數平均值(zhi),使用(yong)并發客戶端 Workers 數量(liang)(liang)為 8。首(shou)先我(wo)(wo)們(men)提(ti)供場景(jing)二 (4,000 設備)的(de)查(cha)(cha)詢(xun)性能(neng)對比結(jie)果(guo)。

表 1. 4,000 devices × 10 metrics(場景二)查詢性能對比表(單位: ms)
查詢分類  TDengine InfluxDB InfluxDB/TDengine
Simple Rollups single-groupby-1-1-1 0.94 1.71 181.91%
single-groupby-1-1-12 1.92 9.40 489.58%
single-groupby-1-8-1 2.09 4.10 196.17%
single-groupby-5-1-1 1.08 4.40 407.41%
single-groupby-5-1-12 3.00 36.43 1214.33%
single-groupby-5-8-1 2.60 13.58 522.31%
Aggregates cpu-max-all-1 1.30 5.86 450.77%
cpu-max-all-8 3.36 20.64 614.29%
Double-Rollups double-groupby-1 266.69 2,785.23 1044.37%
double-groupby-5 446.23 11,702.49 2622.52%
double-groupby-all 686.42 23,509.02 3424.87%
Thresholds high-cpu-1 2.23 17.15 769.06%
high-cpu-all 3,508.00 52,884.94 1507.55%
Complex Queries groupby-orderby-limit 1,527.02 23,169.15 1517.28%
lastpoint 133.13 2,808.00 2109.22%

下面我們對每個查詢(xun)結果做一(yi)定的(de)分析(xi)說明:

時序數據庫查詢性能對比:InfluxDB vs. TDengine - TDengine Database 時序數據庫
圖 1.  4000  devices ×  10 metrics  Simple Rollups 查詢響應時間 (數值越小越好)

由于(yu) Simple Rollups 的整體查(cha)(cha)詢(xun)(xun)響應(ying)(ying)時(shi)間非常(chang)短(duan),制約查(cha)(cha)詢(xun)(xun)響應(ying)(ying)時(shi)間主(zhu)體因素并不(bu)是(shi)查(cha)(cha)詢(xun)(xun)涉及的數(shu)據(ju)規模(mo),即這種類(lei)型查(cha)(cha)詢(xun)(xun)的瓶頸(jing)并不(bu)是(shi)數(shu)據(ju)規模(mo)。但(dan)是(shi) TDengine 仍然在所有(you)類(lei)型的查(cha)(cha)詢(xun)(xun)響應(ying)(ying)時(shi)間上優于(yu) InfluxDB,具體的數(shu)值比較請參見表(biao) 1 中的詳細數(shu)據(ju)表(biao)格。

時序數據庫查詢性能對比:InfluxDB vs. TDengine - TDengine Database 時序數據庫
圖 2 .  4000  devices ×  10 metrics Aggregates 查詢響應時間 (數值越小越好)

在(zai)  Aggregates 類型的查詢(xun)(xun)中,我們看到 TDengine 查詢(xun)(xun)性能相(xiang)比于 InfluxDB 有比較(jiao)大的優勢,TDengine 在(zai) cpu-max-all-8 查詢(xun)(xun)性能是(shi) InfluxDB 的 7 倍。

時序數據庫查詢性能對比:InfluxDB vs. TDengine - TDengine Database 時序數據庫
圖 3.  4000  devices ×  10 metrics Double rollups 查詢響應時間 (數值越小越好)

在 Double-rollups 類型查(cha)(cha)詢中, TDengine 展現出(chu)巨大的性能優勢,其查(cha)(cha)詢響應時間來度量,在 double-groupby-5 查(cha)(cha)詢上是 InfluxDB 的 26 倍(bei) 和 double-groupby-all 是其 34 倍(bei)。

時序數據庫查詢性能對比:InfluxDB vs. TDengine - TDengine Database 時序數據庫
圖 4.  4000  devices ×  10 metrics Thresholds 查詢 high-cpu-1 響應時間 (數值越小越好)
時序數據庫查詢性能對比:InfluxDB vs. TDengine - TDengine Database 時序數據庫
圖 5.  4000  devices ×  10 metrics Thresholds 查詢 high-cpu-all 響應時間 (數值越小越好)

如圖 4、圖 5 所(suo)示 threshold 類型的(de)查(cha)詢,TDengine 的(de)查(cha)詢響應(ying)時間均顯著低于(yu) InfluxDB。在 high-cpu-all 類型的(de)查(cha)詢上,TDengine 的(de)性能是 InfluxDB 的(de) 15 倍。

對于 Complex-queries 類型(xing)的(de)查(cha)詢(xun),TDengine 兩個查(cha)詢(xun)均大幅領先 InfluxDB。在 lastpoint 查(cha)詢(xun)中,查(cha)詢(xun)性能(neng)是(shi) InfluxDB 的(de) 21倍。在 groupby-orderby-limit 場(chang)景(jing)中查(cha)詢(xun)性能(neng)是(shi) InfluxDB 的(de) 15 倍。

時序數據庫查詢性能對比:InfluxDB vs. TDengine - TDengine Database 時序數據庫
圖 6 .  4000  devices ×  10 metrics Complex queries 查詢響應時間 (數值越小越好)

2 資源開銷對比

由于部分(fen)查(cha)詢(xun)(xun)持(chi)續時(shi)間特別(bie)短(duan),并不能完整(zheng)(zheng)地看(kan)到查(cha)詢(xun)(xun)過程中(zhong)服務器(qi)的(de) IO/CPU/網絡情況。我們(men)針對(dui)場景二(er)以 Double rollups 類別(bie)中(zhong)的(de) double-groupby-5 查(cha)詢(xun)(xun)為例(li),執行 1,000 次查(cha)詢(xun)(xun),記錄整(zheng)(zheng)個過程中(zhong) TDengine 和 InfluxDB 在(zai)查(cha)詢(xun)(xun)執行的(de)整(zheng)(zheng)個過程中(zhong)服務器(qi) CPU、內存、網絡的(de)開(kai)銷進行對(dui)比。

時序數據庫查詢性能對比:InfluxDB vs. TDengine - TDengine Database 時序數據庫
圖 7.  查詢過程中服務器  CPU  開銷

如圖 7 可以看(kan)到,TDengine 和 InfluxDB 在整個查詢過(guo)程中 CPU 的(de)(de)使用均較(jiao)為平穩。TDengine 在查詢過(guo)程中整體(ti)(ti) CPU 占用約 80%,使用的(de)(de) CPU 資源(yuan)較(jiao)高(gao),InfluxDB 的(de)(de)穩定的(de)(de) CPU 占用較(jiao)小,約 27 %(但是(shi)有(you)較(jiao)多(duo)的(de)(de)瞬(shun)時(shi)(shi)沖(chong)高(gao))。整體(ti)(ti) CPU 開(kai)銷上來(lai)看(kan),雖然 InfluxDB 瞬(shun)時(shi)(shi) CPU 開(kai)銷大部分(fen)是(shi)較(jiao)低的(de)(de),但是(shi)其完(wan)成(cheng)查詢持續時(shi)(shi)間(jian)最長,所以整體(ti)(ti) CPU 資源(yuan)消耗(hao)最多(duo)。由于 TDengine 完(wan)成(cheng)全部查詢的(de)(de)時(shi)(shi)間(jian)僅是(shi) InfluxDB 的(de)(de)  1/20,雖然 CPU 穩定值是(shi) InfluxDB 的(de)(de) 2 倍多(duo),但整體(ti)(ti)的(de)(de) CPU 計算時(shi)(shi)間(jian)消耗(hao)只有(you)其 1/10 。

服務器內存狀況

時序數據庫查詢性能對比:InfluxDB vs. TDengine - TDengine Database 時序數據庫
圖 8. 查詢過程中服務器內存情況

如圖 8 所示,在整個查詢過(guo)程中,TDengine 內(nei)(nei)存維持了一個相(xiang)對平穩的狀(zhuang)態,InfluxDB 內(nei)(nei)存占(zhan)用呈(cheng)現(xian)相(xiang)對穩定的狀(zhuang)態。

服務器網絡帶寬

時序數據庫查詢性能對比:InfluxDB vs. TDengine - TDengine Database 時序數據庫
圖 9. 查詢過程中網絡占用情況

圖 9 展(zhan)示了查詢過程中服務器端(duan)上行和下行的網(wang)(wang)絡(luo)(luo)帶(dai)(dai)寬(kuan)情(qing)況,負(fu)載狀(zhuang)況基本上和 CPU 狀(zhuang)況相(xiang)似。TDengine 網(wang)(wang)絡(luo)(luo)帶(dai)(dai)寬(kuan)開銷最高,因為在最短的時間內(nei)就完成了全部(bu)查詢,需(xu)要(yao)將查詢結果返回給(gei)客戶端(duan)。InfluxDB 網(wang)(wang)絡(luo)(luo)帶(dai)(dai)寬(kuan)開銷最低。

3 100 devices × 10 metrics 查詢性能對比

對(dui)于場景一(100 devices x 10 metrics),TSBS 的 15 個查詢(xun)對(dui)比(bi)結(jie)果如下:

表 2. InfluxDB 相對于 TDengine 查詢響應時間比率 (單位:ms)
查詢分類  TDengine InfluxDB InfluxDB/TDengine
Simple Rollups single-groupby-1-1-1 0.91 2.01 220.88%
single-groupby-1-1-12 1.83 9.40 513.66%
single-groupby-1-8-1 2.09 3.98 190.43%
single-groupby-5-1-1 1.03 4.40 427.18%
single-groupby-5-1-12 2.94 36.77 1250.68%
single-groupby-5-8-1 2.63 13.71 521.29%
Aggregates cpu-max-all-1 1.27 5.92 466.14%
cpu-max-all-8 3.46 21.88 632.37%
Double-Rollups double-groupby-1 7.79 78.61 1009.11%
double-groupby-5 12.10 340.53 2814.30%
double-groupby-all 17.31 642.16 3709.76%
Thresholds high-cpu-1 2.05 13.51 659.02%
high-cpu-all 96.75 1,129.62 1167.57%
Complex Queries groupby-orderby-limit 1,527.02 23,169.15 1517.28%
lastpoint 133.13 2,808.00 2109.22%

如表 2 所示,在更小規模的(de)數據集(100設備)上的(de)查(cha)詢(xun)對比可(ke)以看到(dao),整體(ti)上 TDengine 同樣(yang)展現出(chu)極好的(de)性能(neng),在全部的(de)查(cha)詢(xun)語(yu)句中全面優于 InfluxDB,部分查(cha)詢(xun)性能(neng)超過 InfluxDB 37 倍。

>> InfluxDB vs. TDengine 其他性能對比測試具體結果與分析