MongoDB 3.2版WiredTiger儲存引擎效能測試

來源:互聯網
上載者:User

MongoDB 3.2版WiredTiger儲存引擎效能測試

MongoDB 3.2於最近發布了,它使用WiredTiger作為其預設的儲存引擎。這五年來,MongoDB從誕生到流行,發展可謂是相當迅猛。

MongoDB 3.0就開始支援“可插拔的儲存引擎”功能,因此在3.2版使用WiredTiger也在情理之中。WiredTiger引擎基於B-Tree演算法,B-tree即多路搜尋樹,非二叉樹,是一種常見的資料結構,使用B-tree結構可以顯著減少定位記錄時所經曆的中間過程,從而加快存取速度。B是Balance的簡稱,B-Tree資料結構一般用於資料庫的索引,綜合效率較高。

以B-Tree演算法為基礎的WiredTiger引擎的執行效能應優於針對IO最佳化的RocksDB和PerconaFT,但是WiredTiger 3.0引擎存在IO效能衰減問題。有報道說,WiredTiger 3.2引擎的效能在3.0版的基礎上有了較大的提升,下面可以看看WiredTiger 3.2引擎的基準測試情況。測試不僅關注其效能,還關注在檢查點的執行情況。

測試使用iiBench工具,此工具地址見: https://github.com/mdcallag/iibench-mongodb

iibench-mongodb工具使用需求:

  • Java 1.6或1.7版
  • MongoDB的Java驅動必須包含到類路徑下

比如CLASSPATH中:

# cd /home# wget http://central.maven.org/maven2/org/mongodb/mongo-java-driver/3.2.0/mongo-java-driver-3.2.0.jar# export CLASSPATH=/home/mongo-java-driver-3.2.0.jar:$CLASSPATH

WiredTiger的命令列:

numactl --interleave=all ./mongod --dbpath=/mnt/i3600/mongo/ --storageEngine=wiredTiger --syncdelay=900 --wiredTigerCacheSizeGB=10 --wiredTigerJournalCompressor=none

伺服器情況:

  • 存放裝置: Intel SSD DC P3600 SSD 1.6TB
  • 主機CPU: Bare Metal powered by Intel(R) Xeon(R) CPU E5-2680
  • 測試資料集:2億條記錄,單個索引

測試結果:

WiredTiger 3.2引擎確實更快。執行完成WiredTiger 3.2引擎花了31分鐘,而WiredTiger 3.0引擎花了51分鐘。

但是,WiredTiger 3.2引擎仍然存在一些問題。在測試期間,WiredTiger有一分鐘左右的時間拒絕處理資料。

更多MongoDB相關教程見以下內容:

CentOS 編譯安裝 MongoDB與mongoDB的php擴充

CentOS 6 使用 yum 安裝MongoDB及伺服器端配置

Ubuntu 13.04下安裝MongoDB2.4.3

MongoDB入門必讀(概念與實戰並重)

Ubunu 14.04下MongoDB的安裝指南

《MongoDB 權威指南》(MongoDB: The Definitive Guide)英文文字版[PDF]

Nagios監控MongoDB分區叢集服務實戰

基於CentOS 6.5作業系統搭建MongoDB服務

MongoDB 的詳細介紹:請點這裡
MongoDB 的:請點這裡

本文永久更新連結地址:

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.