“你們的數據庫性能怎么樣?”
“能不能滿足我們的業務?”
“和其他數據庫對比性能有優勢么?”
......
客戶在使用數據庫時常有這樣的擔心和疑問。
本文從測試方案、測試工具、測試場景、測試結果等方面詳細介紹了GaussDB(for Influx)和開源InfluxDB集群在X86架構下的性能測試情況。測試結果顯示,GaussDB(for Influx)較企業版InfluxDB集群能提供更高的寫入性能、更低的訪問延遲以及更高的數據壓縮率。
1測試方案
1.1資源配置
服務端配置
產品名稱 |
規格 |
存儲 |
架構 |
GaussDB(for Influx) | 4U16G 2節點 | 100G | 集群架構 |
開源企業版InfluxDB | 4U16G3節點 | 100G | 集群架構 |
1.2測試工具
測試工具為開源性能工具TS-benchMark。
2測試設計
2.1測試模型
本次測試采用風力發電數據模型,每個風場50個設備,每個設備50個傳感器,1個風場1個線程,通過load數據的線程數來控制時間線的大小,通過收集時間的長短來控制數據量。
模型每條數據大小約為24字節,具體的類型如下:
Timestamp | farm | device | sensor | value
2.2測試數據量
測試數據分為兩個場景,大數據量和小數據量,具體數據量如下:
場景 |
時間線 |
數據量 |
小數據量 | 5000 | 4億 |
大數據量 | 250萬 |
GaussDB(forInflux) 150億 企業版InfluxDB47億 |
注:企業版InfluxDB在插入到47億數據時OOM,以下性能對比都基于此數據量。
2.3測試場景
2.3.1數據寫入場景
lbatch_size(每個批次寫入的數據量) 固定為50,線程數分別從1、2、4、8、16、32、64、128、256、512 遞增;
l線程數(客戶端并發請求的連接數)固定為8, batch_size分別從50、100、150、200、250、300 遞增。
2.3.2數據查詢場景
單線程進行不同語句的查詢,并統計其時延信息。
第一類查詢: 所有TAG查詢
select *
from sensor
where f='f1' and d='d2' and s='s1' and time>=1514768400000000000 and time<=1514772000000000000
第二類查詢: TAG+VALUE查詢
select *
from sensor
where f='f1' and s='d2' and value>=3.0 and time>=1514768400000000000 and time<1514854800000000000
第三類查詢: 聚合查詢
select mean(value)
from sensor
where f='f1' and s='s1' and time>=1514768400000000000 and time<=1514854800000000000 group by f,d,s,time(1h)
第四類查詢: 或條件查詢
select *
from sensor
where f='f1' and (s='s1' or s='s2' or s='s3' or s='s4' or s='s5') and time>=1514768400000000000 and time<=1514769150000000000
第五類查詢: 單個TAG查詢
select *
from sensor
where f='f1' and time>=1514768400000000000 and time<=1514769150000000000
3測試結果分析
3.1寫入吞性能比對
在小數據量場景下,GaussDB(for Influx)的寫入性能是企業版InfluxDB的13倍左右,在大數據量的場景下可以達到1.8倍左右。

3.2查詢性能對比
1)第一類查詢(所有TAG查詢):無論是大數據量還是小數據量場景下,GaussDB(for Influx)的吞吐量是開源InfluxDB企業版的2倍左右。

2)第二類查詢(TAG+VALUE查詢):在小數據量場景下,開源InfluxDB企業版性能高于GaussDB(for Influx),GaussDB(for Influx)在大數據量和小數據量場景下性能基本持平。

3)第三類查詢(聚合查詢):GaussDB(for Influx)查詢性能明顯優于開源InfluxDB企業版,在小數據量場景下是開源版本的14倍,大數據量下也是開源版本的8倍左右。

4)第四類查詢(或條件查詢):GaussDB(for Influx)查詢性能在兩種場景下比較穩定,開源企業版InfluxDB在兩種場景下差異較大;GaussDB(for Influx)在小數據量場景下表現優于開源版,在大數據量場景下低于開源版。

5)第五類查詢(單個TAG查詢):GaussDB(for Influx)查詢性能在兩種場景下比較穩定,在大數據量場景下低于開源版。

3.3數據壓縮率對比
在250萬時間線場景下,GaussDB(for Influx)導入了151億條數據,導入前數據大小為337.5G,導入后為49.8G,壓縮率為6.8;開源企業版導入了47億條數據,導入前105G,導入后21.3G,壓縮率為4.9。GaussDB(for Influx)壓縮率是開源企業版的1.4倍左右。
Influx引擎采用LSM tree架構,隨著后臺compaction的進行,壓縮率會進一步提升,當前數據對比是數據剛導入時的結果。
4總結
在GaussDB(for Influx)2節點對比開源版3節點場景下,GaussDB(for Influx)給客戶帶來了更高的寫入能力、更穩定的查詢能力、更高的壓縮率。GaussDB(for Influx)寫入能力在小數據量場景下是開源企業版的13倍,在大數據量場景下是開源企業版的1.8倍;查詢能力在兩種場景下表現穩定,在大部分查詢場景下優于開源企業版;在壓縮率方面,同樣數據模型下,高出開源版本40%。
除了以上優勢外,GaussDB(for Influx)還在集群化、冷熱分級存儲、高可用方面也做了深度優化,能更好地滿足時序應用的各種場景。
審核編輯:湯梓紅
-
華為
+關注
關注
216文章
35133瀏覽量
255374 -
數據庫
+關注
關注
7文章
3907瀏覽量
65938 -
開源
+關注
關注
3文章
3637瀏覽量
43644 -
華為云
+關注
關注
3文章
2764瀏覽量
18188
發布評論請先 登錄
HarmonyOS5云服務技術分享--云數據庫使用指南
華為云榮登Gartner?云數據庫挑戰者象限
華為云Flexus X實例,Redis性能加速評測及對比

云數據庫和云服務器哪個便宜一些?
降本增效、極簡體驗!828 就選華為云 Flexus 云數據庫 RDS

軟通動力數據庫全棧服務,助力企業數據庫體系全面升級

評論