六月婷婷AV,国产偷窥猎奇福利二区,日韩三级片。,好吊色网站,日韩成人中文在线视频,国产亚洲午夜啪啪,亚洲欧美另类国产精品,国产成人av1,任你艹在线观看

時(shí)序數(shù)據(jù)庫查詢性能對(duì)比:TimescaleDB vs. TDengine

時(shí)序數(shù)據(jù)庫查詢性能對(duì)比:TimescaleDB vs. TDengine

基于 TSBS 標(biāo)準(zhǔn)數(shù)據(jù)集,TDengine Database 團(tuán)隊(duì)對(duì)時(shí)序數(shù)據(jù)庫Time Series Database,TSDB) TimescaleDB 和 TDengine 針對(duì) TSBS 指定的 DevOps 中 cpu-only 五個(gè)場(chǎng)景對(duì)查詢性能進(jìn)行了對(duì)比測(cè)試。

點(diǎn)擊這里,查看相關(guān)背景介紹及軟件配置。

在場(chǎng)景一(只包含 4 天的數(shù)據(jù))與場(chǎng)景二的 15 個(gè)不同類型的查詢中,TDengine 的查詢平均響應(yīng)時(shí)間全面優(yōu)于 TimescaleDB,而且在復(fù)雜查詢上優(yōu)勢(shì)更為明顯,同時(shí)具有最小的計(jì)算資源開銷。相對(duì)于 TimeScaleDB,場(chǎng)景一,TDengine 查詢性能是其 1.1 ~ 28.6 倍,平均 7.6 倍,場(chǎng)景二,TDengine查詢性能是其 1.2 ~ 24.6 倍,平均 7.7 倍。 

在查詢性能評(píng)估部分,我們使用場(chǎng)景一(只包含 4 天數(shù)據(jù),這個(gè)修改與[7]中要求一致)和場(chǎng)景二作為基準(zhǔn)數(shù)據(jù)集。在查詢性能評(píng)估之前,對(duì)于 TimescaleDB, 我們采用[7]中推薦配置,設(shè)置為 8 個(gè) Chunk ,以確保其充分發(fā)揮查詢性能。在整個(gè)查詢對(duì)比中,TDengine 數(shù)據(jù)庫的虛擬節(jié)點(diǎn)數(shù)量(vnodes)保持為默認(rèn)的 6 個(gè),其他的數(shù)據(jù)庫參數(shù)配置為默認(rèn)值。

1 4,000 devices × 10 metrics查詢性能對(duì)比

由于部分類型(分類標(biāo)準(zhǔn)參見[7] )單次查詢響應(yīng)時(shí)間非常短,為了更加準(zhǔn)確地測(cè)量每個(gè)查詢場(chǎng)景的較為穩(wěn)定的響應(yīng)時(shí)間,我們將單個(gè)查詢運(yùn)行次數(shù)提升到 5,000 次,然后使用  TSBS 自動(dòng)統(tǒng)計(jì)并輸出結(jié)果,最后結(jié)果是 5,000 次查詢的算數(shù)平均值,使用并發(fā)客戶端 Workers 數(shù)量為 8。首先我們提供場(chǎng)景二 (4,000 設(shè)備)的查詢性能對(duì)比結(jié)果。

表 1. 4,000 devices × 10 metrics(場(chǎng)景二)查詢性能對(duì)比表(單位: ms)
查詢分類  TDengine TimescaleDB TimescaleDB/TDengine
Simple Rollups single-groupby-1-1-1 0.94 3.27 347.87%
single-groupby-1-1-12 1.92 5.07 264.06%
single-groupby-1-8-1 2.09 4.56 218.18%
single-groupby-5-1-1 1.08 3.34 309.26%
single-groupby-5-1-12 3.00 7.02 234.00%
single-groupby-5-8-1 2.60 9.6 369.23%
Aggregates cpu-max-all-1 1.30 5.54 426.15%
cpu-max-all-8 3.36 23.72 705.95%
Double-Rollups double-groupby-1 266.69 5467.91 2050.29%
double-groupby-5 446.23 10984.63 2461.65%
double-groupby-all 686.42 16660.7 2427.19%
Thresholds high-cpu-1 2.23 4.05 181.61%
high-cpu-all 3,508.00 4328.64 123.39%
Complex Queries groupby-orderby-limit 1,527.02 12784.92 837.25%
lastpoint 133.13 755.37 567.39%

下面我們對(duì)每個(gè)查詢結(jié)果做一定的分析說明:

時(shí)序數(shù)據(jù)庫查詢性能對(duì)比:TimescaleDB vs. TDengine - TDengine Database 時(shí)序數(shù)據(jù)庫
圖1. 4000  devices ×  10 metrics  Simple Rollups 查詢響應(yīng)時(shí)間 (數(shù)值越小越好)

由于 Simple Rollups 的整體查詢響應(yīng)時(shí)間非常短,制約查詢響應(yīng)時(shí)間主體因素并不是查詢涉及的數(shù)據(jù)規(guī)模,即這種類型查詢的瓶頸并不是數(shù)據(jù)規(guī)模。但是 TDengine 仍然在所有類型的查詢響應(yīng)時(shí)間上優(yōu)于 TimescaleDB,具體的數(shù)值比較請(qǐng)參見表 1 中的詳細(xì)數(shù)據(jù)表格。

在  Aggregates 類型的查詢中,我們看到 TDengine 查詢性能相比于 TimescaleDB 有比較大的優(yōu)勢(shì),TDengine 在 cpu-max-all-8 查詢性能是 TimescaleDB 的 6 倍。

時(shí)序數(shù)據(jù)庫查詢性能對(duì)比:TimescaleDB vs. TDengine - TDengine Database 時(shí)序數(shù)據(jù)庫
圖 2. 4000  devices ×  10 metrics Aggregates 查詢響應(yīng)時(shí)間 (數(shù)值越小越好)
時(shí)序數(shù)據(jù)庫查詢性能對(duì)比:TimescaleDB vs. TDengine - TDengine Database 時(shí)序數(shù)據(jù)庫
圖 3. 4000  devices ×  10 metrics Double rollups 查詢響應(yīng)時(shí)間 (數(shù)值越小越好)

在 Double-rollups 類型查詢中, TDengine 展現(xiàn)出巨大的性能優(yōu)勢(shì),其查詢響應(yīng)時(shí)間來度量,double-groupby-5 和 double-groupby-all 的查詢性能是 TimescaleDB 的 24 倍。

時(shí)序數(shù)據(jù)庫查詢性能對(duì)比:TimescaleDB vs. TDengine - TDengine Database 時(shí)序數(shù)據(jù)庫
 圖 4. 4000  devices ×  10 metrics Thresholds 查詢 high-cpu-1 響應(yīng)時(shí)間 (數(shù)值越小越好)
時(shí)序數(shù)據(jù)庫查詢性能對(duì)比:TimescaleDB vs. TDengine - TDengine Database 時(shí)序數(shù)據(jù)庫
圖 5. 4000  devices ×  10 metrics Thresholds 查詢 high-cpu-all 響應(yīng)時(shí)間 (數(shù)值越小越好)

如圖 4、圖 5 所示 threshold 類型的查詢,TDengine 的查詢響應(yīng)時(shí)間均顯著低于 TimescaleDB。在 high-cpu-all 類型的查詢上,TDengine 的性能是 TimescaleDB 的 1.23 倍。

對(duì)于 Complex-queries 類型的查詢,TDengine 兩個(gè)查詢均大幅領(lǐng)先 TimescaleDB。在 lastpoint 查詢中,查詢性能是 TimescaleDB 的 5 倍。在 groupby-orderby-limit 場(chǎng)景中查詢性能是 TimescaleDB的 8 倍。在時(shí)間窗口聚合的查詢過程中,TimescaleDB 針對(duì)規(guī)模較大的數(shù)據(jù)集其查詢性能不佳(double rollups 類型查詢),對(duì)于 groupby-orderby-limit 的查詢,其性能上表現(xiàn)同樣不是太好。

時(shí)序數(shù)據(jù)庫查詢性能對(duì)比:TimescaleDB vs. TDengine - TDengine Database 時(shí)序數(shù)據(jù)庫
圖 6 4000  devices ×  10 metrics Complex queries 查詢響應(yīng)時(shí)間 (數(shù)值越小越好)

2 資源開銷對(duì)比

由于部分查詢持續(xù)時(shí)間特別短,并不能完整地看到查詢過程中服務(wù)器的 IO/CPU/網(wǎng)絡(luò)情況。我們針對(duì)場(chǎng)景二以 Double rollups 類別中的 double-groupby-5 查詢?yōu)槔?,?zhí)行 1,000 次查詢,記錄整個(gè)過程中 TDengine、TimescaleDB 兩個(gè)軟件系統(tǒng)在查詢執(zhí)行的整個(gè)過程中服務(wù)器 CPU、內(nèi)存、網(wǎng)絡(luò)的開銷進(jìn)行對(duì)比。

時(shí)序數(shù)據(jù)庫查詢性能對(duì)比:TimescaleDB vs. TDengine - TDengine Database 時(shí)序數(shù)據(jù)庫
圖 7.  查詢過程中服務(wù)器  CPU  開銷

如圖 7 可以看到,兩個(gè)系統(tǒng)在整個(gè)查詢過程中 CPU 的使用均較為平穩(wěn)。TDengine 在查詢過程中整體 CPU 占用約 80%, 使用的 CPU 資源最高,TimescaleDB 在查詢過程中瞬時(shí) CPU 占用約 38%。由于 TDengine 完成全部查詢的時(shí)間僅 TimescaleDB 1/20,雖然 CPU 穩(wěn)定值是 TimescaleDB 的 2 倍多,整體的 CPU 計(jì)算時(shí)間消耗只有其 1/10 。

服務(wù)器內(nèi)存狀況

時(shí)序數(shù)據(jù)庫查詢性能對(duì)比:TimescaleDB vs. TDengine - TDengine Database 時(shí)序數(shù)據(jù)庫
圖 8. 查詢過程中服務(wù)器內(nèi)存情況

如圖 8 所示,在整個(gè)查詢過程中,TDengine 內(nèi)存維持了一個(gè)相對(duì)平穩(wěn)的狀態(tài)。TimescaleDB 在整個(gè)查詢過程中內(nèi)存呈現(xiàn)增加的狀態(tài),查詢完成后即恢復(fù)到初始狀態(tài)。

服務(wù)器網(wǎng)絡(luò)帶寬

時(shí)序數(shù)據(jù)庫查詢性能對(duì)比:TimescaleDB vs. TDengine - TDengine Database 時(shí)序數(shù)據(jù)庫
圖 9. 查詢過程中網(wǎng)絡(luò)占用情況

圖 9 展示了查詢過程中服務(wù)器端上行和下行的網(wǎng)絡(luò)帶寬情況,負(fù)載狀況基本上和 CPU 狀況相似。TDengine 網(wǎng)絡(luò)帶寬開銷較高,因?yàn)樵谧疃痰臅r(shí)間內(nèi)就完成了全部查詢,需要將查詢結(jié)果返回給客戶端。TimescaleDB 開銷較低,但持續(xù)時(shí)間長。

3 100 devices × 10 metrics 查詢性能對(duì)比

對(duì)于場(chǎng)景一(100 devices x 10 metrics),TSBS 的 15 個(gè)查詢對(duì)比結(jié)果如下:

表 2. Timescale 相對(duì)于 TDengine 查詢響應(yīng)時(shí)間比率 (單位:ms)
查詢分類  TDengine TimescaleDB TimescaleDB/TDengine
Simple Rollups single-groupby-1-1-1 0.91 2.93 321.98%
single-groupby-1-1-12 1.83 4.87 266.12%
single-groupby-1-8-1 2.09 4.30 205.74%
single-groupby-5-1-1 1.03 3.19 309.71%
single-groupby-5-1-12 2.94 6.38 217.01%
single-groupby-5-8-1 2.63 5.91 224.71%
Aggregates cpu-max-all-1 1.27 5.55 437.01%
cpu-max-all-8 3.46 22.83 659.83%
Double-Rollups double-groupby-1 7.79 116.66 1497.56%
double-groupby-5 12.10 346.48 2863.47%
double-groupby-all 17.31 489.04 2825.19%
Thresholds high-cpu-1 2.05 3.92 191.22%
high-cpu-all 96.75 104.68 108.20%
Complex Queries groupby-orderby-limit 47.48 367.40 773.80%
lastpoint 3.95 17.64 446.58%

如表 2 所示,在更小規(guī)模的數(shù)據(jù)集(100設(shè)備)上的查詢對(duì)比可以看到,整體上 TDengine 同樣展現(xiàn)出極好的性能,在全部的查詢語句中全面優(yōu)于 TimescaleDB,部分查詢性能超過 TimescaleDB 28 倍。

>> TimescaleDB vs. TDengine 其他性能對(duì)比測(cè)試具體結(jié)果與分析