TSBS 是什麼?為什麼時序資料庫 TDengine 會選擇它作為效能對比測試平臺?
以下的效能基準報告均使用了 TSBS 作為基礎 Benchmark 平臺,我們從時間跨度和釋出廠商的知名度同時來看,就能發現,基礎測試平臺 TSBS 已經具備了很高的認可度:
- 2018 年 11 月,VictoriaMetrics 的創始人 Aliaksandr Valialkin 釋出 《High-cardinality TSDB benchmarks: VictoriaMetrics vs TimescaleDB vs InfluxDB》,將 VictoriaMetrics 與 TimescaleDB、InfluxDB 進行效能對比。
- 2018 年 11 月,文章《ClickHouse Crushing Time Series》中對比了 TimescaleDB, InfluxDB, ClickHouse 在時序資料場景下的效能。
- 2020 年 3 月,Cloudera 在網站部落格中釋出《Benchmarking Time Series workloads on Apache Kudu using TSBS》,在 DevOps場景 中對比了 Apache Kudu, InfluxDB, VictoriaMetrics, ClickHouse 等整體效能表現。
- 2020 年 3 月, Redis 釋出了基於 TSBS 的效能報告《RedisTimeSeries Version 1.2 Benchmarks》。
- 2020 年 8 月,Timescale 在其官方部落格釋出了效能對比報告《TimescaleDB vs. InfluxDB: Purpose Built Differently for Time-Series Data》。
- 2021 年 8 月,QuestDB 釋出了 QuestDB 與 TimescaleDB 的效能對比報告——《QuestDB vs. TimescaleDB》。
DevOps 場景是一個典型的時序資料應用場景,TSBS DevOps 場景提供了 CPU 狀態的模擬資料,針對每個裝置(CPU)記錄其 10 個測量值(metric),1 個時間戳(納秒解析度),10 個標籤值(tag)。生成的資料每 10 秒間隔一條記錄,具體的內容和示例資料如下:
TSBS 測試可以簡單劃分為兩個主要部分——資料寫入和資料查詢。在本次整個基準效能評估中,共涉及以下五個場景,每個場景的具體資料規模和特點見下表:
透過上表可以看到,五個場景的區別主要在於資料集所包含的裝置記錄數量、裝置數的不同,資料時間間隔均維持在 10 sec。整體來看,五個場景的資料規模都不算大,資料規模最大的是場景五,資料達到了 1.8 億,資料規模最小的是場景一,只有 2678 萬條記錄。在場景四和場景五中,由於裝置數量相對較多,所以資料集僅覆蓋了 3 分鐘的時間跨度。
為了保證測試結果的公正可靠及可複製性,我們選用了公共 IaaS 平臺來搭建 Benchmark 基礎硬體環境,採用了大多數效能對比報告中使用的場景——亞馬遜 EC2 服務環境下 r4.8xlarge 型別的例項作為基礎執行平臺,區域為北美地區,包括 1 臺伺服器、1 臺客戶端。客戶端與伺服器硬體配置完全相同,兩者使用 10 Gbps 網路連線。配置簡表如下:
本次測試的對比軟體為 InfluxDB1.8.10 及 Timescale 2.6.0,在這裡要著重說明一下,由於 InfluxDB 最新的 2.0 版本並沒有納入 TSBS 的主幹分支,因此在這次測試中我們暫且使用了 TSBS 主幹分支所支援的 InfluxDB 最新版本,即 1.8.10。
下面可以簡單為大家介紹下本次測試結果。如下表所示,在全部五個場景中,TDengine 寫入效能均優於 InfluxDB 和 TimescaleDB,寫入過程中資源佔用最低。對比 InfluxDB,TDengine 寫入最優的場景是在 1000 萬裝置下,達到了 InfluxDB 的 10.6 倍;對比 TimescaleDB ,TDengine 寫入最優的場景是在 4000 個裝置下,達到了 TimeScaleDB 的 6.7 倍。
在查詢測試上,我們將其分為 5 大類、15 小類進行查詢對比,從下圖結果彙總中可以看到,在全部 15 個查詢型別中,TDengine 的效能均優於 InfluxDB 和 TimescaleDB,並且它的所有查詢延遲均比 InfluxDB 和 TimescaleDB 更低。亮點資料之一體現在 Double Rollups 查詢型別對比中,TDengine 最大達到 InfluxDB 的 34 倍,TimescaleDB 的 24 倍。
以上就是 TDengine 基於 TSBS 測試報告的測試背景介紹,如果你對測試結果感興趣,歡迎點選進入官網
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70014783/viewspace-2937615/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 為什麼要選擇分散式資料庫?分散式資料庫
- 時序資料庫-01-時序資料庫有哪些?為什麼要使用資料庫
- 為什麼 APISIX Ingress 是比 Traefik 更好的選擇?API
- 為什麼 APISIX Ingress 是比 Ingress NGINX 更好的選擇?APINginx
- ITAM是什麼?為什麼它很重要?
- 為什麼放棄精準測試平臺?
- 為什麼選擇.NETCore?NetCore
- 從 InfluxDB 到 TDengine,陽光氫能為什麼會做出這個選擇?UX
- 什麼是倉庫管理系統?為什麼選擇基於雲的WMS?
- 為什麼選擇 Intellij IDEA 作為日常開發工具IntelliJIdea
- 什麼是滲透測試?為什麼要做滲透測試?
- 為什麼越來越多的人選擇RDS建立MySQL資料庫?MySql資料庫
- 新加坡為什麼是ICO的最後選擇,同時也是最佳選擇?
- 什麼是資料實時同步,為什麼資料實時同步很重要
- 為什麼選擇俄羅斯代理IP?它對俄羅斯業務有什麼用處?
- 為什麼選擇Guice框架GUI框架
- 為什麼選擇使用Rust?Rust
- Aembit為什麼選擇 Rust?Rust
- 為什麼運維管理皮膚我只選擇它?運維
- 什麼是客戶分析,為什麼它很重要?
- 什麼是 WireGuard?為什麼 Linux 使用者為它瘋狂?Linux
- 大公司為什麼要會選擇DevOps?dev
- 為什麼企業要選擇低程式碼開發平臺?
- 為什麼nginx效能比apache效能好NginxApache
- 人是什麼?人生是什麼?人為什麼會變?
- 你是怎麼選擇resetting和normalizing的?為什麼?ORM
- 為什麼要對資料庫最佳化資料庫
- Linux運維管理皮膚為什麼我只選擇它?Linux運維
- PLC資料雲平臺是什麼?有什麼功能?
- 為什麼選擇Cynefin框架? – zwischenzugs框架
- 為什麼選擇高防DNS?DNS
- 為什麼選擇centos系統CentOS
- 簡單的效能測試說明為什麼Go比Java快?GoJava
- 資料庫倉庫系列:(一)什麼是資料倉儲,為什麼要資料倉儲資料庫
- 為什麼PostgreSQL是最成功的資料庫?SQL資料庫
- 為什麼選擇Linux作為伺服器呢?Linux優點!Linux伺服器
- 為什麼程式設計初學者會選擇 Python 作為入門語言?程式設計Python
- 一鍵獲取測試指令碼,輕鬆驗證“TSBS 時序資料庫效能基準測試報告”指令碼資料庫測試報告