MySQL Falcon 的一些事情

ZFS 上順便測了一下 MySQL 6.0 (以 6.0.3 版測試) 的 Falcon Engine,紀錄下一些東西:

  • Falcon 與 InnoDB 類似,以一組檔案儲存資料庫的檔案,所以不太容易備份,不像 MyISAM 有 mysqlhotcopy 可以用。
  • 寫入效率上相當差,即使開了 falcon_disable_fsync=1 還是很慢,以四個 client 倒資料進去,寫入速度約 MyISAM 的 1/10 ~ 1/20,以一個 client 倒也是一樣的情況。瓶頸不在 CPU (800% 的量大約用掉 2%) 與 I/O (以 gstat 看約 50% busy),暫時還看不出問題。
  • SELECT 的最佳化似乎有問題,對有 index 的 column 下了幾次有用到 ORDER BY 的 simple query,看反應速度很像 table scan,但 EXPLAIN 出來的結果都顯示有使用 index。

Replication 與 Transaction 暫時還沒測,也許應該先測 PBXT Engine...

8 thoughts on “MySQL Falcon 的一些事情”

  1. 從 Falcon 的網站上提到所使用的架構,看起來並不適於 sequence write 或大量的情況。先是有 log ,之後還要寫到 data page ,資料搬了好幾番。況且「倒資料」和「大量寫入」也不是常態應用,或許使用實際應用的 access track 作測試,比較能測出 Falcon 的效果。一般系統的設計,都會 leverage 讀取次數遠大於寫入次數的經驗法則,除非是針對特別的應用,例如「倒資料」 :p

  2. 我晚點測試 bulk insert 會降低多少速度... (因為資料轉移也還是會用到,總不能停機轉一個禮拜)

    另外要測你說的 pattern,我得想看看有什麼 real data 可以複製一份丟到裡面測試...

Leave a Reply

Your email address will not be published. Required fields are marked *