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

硬件加倍,性能翻番!TDengine 線性擴展能力測試全解析

圖片

軟件擴展能力是軟件架構設計中的一個關鍵要素,具有良好擴展能力的軟件能夠充分利用新增的硬件資源。當軟件性能與硬件增加保持同步比例增長時,我們稱這種現象為軟件具有線性擴展能力。要實現這種線性擴展并不簡單,它要求軟件架構精心設計,能夠最大化硬件性能的利用,同時減少內部資源消耗。這需要對現有架構進行深入的優化和調整。

為了驗證 TDengine 是否具備線性擴展能力,我們可以采取以下測試方法:首先識別出可能成為性能瓶頸的硬件資源,然后逐步增加這類資源,觀察軟件性能的變化。典型的測試焦點包括 CPU 和磁盤,因為這兩者是計算機資源中最常見的擴展點。下面我們將從這兩方面來進行測試驗證。

01

TDengine CPU 線性擴展能力

測試目的

驗證在帶寬、IO 及內存不是瓶頸,僅 CPU 是瓶頸的情況下,寫入速度應與 CPU 核數成正比。

測試方法

測試系統:使用 TDengine 官網發布的 docker 鏡像,TDengine 版本為 V3.3.0.0
測試工具:taosBenchmark
表結構:TDengine 官網智能電表結構
增加 CPU 核數方法:docker 綁定固定數量 CPU 技術
兩階段配置方法
1 ~ 4 核 VGROUP 為 4 ,寫入線程數為 4
5 ~ 12 核 VGROUP 為 12 ,寫入線程數為 12
使用兩階段配置,讓 CPU 始終保持在瓶頸狀態

測試參數

數據庫:1 個
超級表:1 個
子表數:100 個
每子表行數:100W
總數據量:1 億

測試結果

圖片

磁盤為 SSD,寫入最高可達 :350M/秒,IO 非常富余
帶寬:客戶端服務器同一臺機器,帶寬可認為無限制

圖片

數據解讀

  • 在 4 核時 CPU 使用率降至 88%,若再增加 CPU 可能 CPU 不會再成為瓶頸,所以升級配置至 12 個 VGROUPS、12 寫入線程,讓 CPU 始終保持在瓶頸狀態下

  • 每增加一個 CPU,寫入性能線性提升約 50W 左右,符合線程增長預期

  • 磁盤 IO 基本與寫入速度增長保持一致

測試結論: 與預期一致

02

TDengine IO 線性擴展能力

測試目的

驗證在CPU、帶寬及內存不是瓶頸,僅 IO 是瓶頸情況下,寫入速度應與增加的磁盤個數成正比。

測試方法

測試系統:Linux Ubuntu 20.4 操作系統

硬件配置:CPU 24 核, 64 GB 內存,掛三塊普通 5400 轉低速機械盤(選擇性能普通的硬盤,有利于很快打滿 IO,達到 IO 成為瓶頸的條件 )

TDengine:版本 V3.3.0.0

測試工具:taosBenchmark

表結構: 

圖片

(每行長度 32618 字節,使用大寬行,更能把 IO 打滿)

增加磁盤方法:使用同級掛載多塊磁盤技術

測試參數

數據庫:1 個 VGROUP 16

超級表:1 個

子表數:100 個

每子表行數:1W

總數據量:100W

taosBenchmark

寫入線程數 = 16 個

寫入方式 = stmt vgroup 綁定線程快速寫入方法

測試結果

圖片
  • CPU: 24 核 CPU ,大部分都為空閑,CPU 非常富余
  • 帶寬:客戶端服務器同一臺機器,帶寬可認為無限制
  • Commit 線程數是數據落盤的線程數,直接操作 IO 
  • 磁盤掛載到 3 塊后,需求加大 Commit 線程數,才能打滿 IO
圖片

數據解讀

從數據上可看出,每增加一塊磁盤,寫入性能也會成比例增長,新增磁盤 IO 被充分使用。

測試結論: 與預期一致

03

寫在最后

通過對 TDengine 服務器的 CPU 和磁盤資源進行擴展實驗,我們驗證了其對硬件資源的利用能力。實驗結果表明,TDengine 展現出了顯著的線性擴展能力,這證明了其具備優秀的架構設計和先進的設計理念。TDengine 能夠有效地利用增加的硬件資源,這不僅提升了性能,也優化了資源的整體使用效率。這種能力是 TDengine 高效處理大規模數據需求的關鍵因素。