Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
MySQL5.6、5.7
性能比較
MyNA会 2015年4月
2015/04/22
誰
❖ いとう ひろゆき
❖ サーバ運用/保守が仕事
❖ ネットワークからOS、ミドルウェアまでアプリケーシ
ョン以外はなんでも面倒を見ないといけない(程度の差
はあります)
❖ MySQL好き。酒好き。
比較内容
❖ 秒間接続数
❖ sysbenchのpoint selectとoltp (全部メモリに載るデータ
量)
❖ tpcc-mysql (i/oバウンド warehouse 1000)
❖ tpcc-mysql以外は3回実行した平均値
❖...
ベンチマーク環境
❖ ベンチマークサーバ
❖ HP DL360p G8v2
❖ CPU Intel Xeon E5-2643 v2 @ 3.50GHz (1CPU = 6Core)
❖ MEM 8GB x 4 = 32GB (DDR3 1866 MHz)
❖ i...
❖ MySQLバージョン(rpm版使用)
❖ 5.7.7 RC 及び 5.6.24
❖ ベンチマークツール
❖ sysbench 0.4.12
❖ sysbench 0.5
❖ tpcc mysql
❖ ファイルシステム(ioDrive2)
❖...
❖ MySQLの設定について
❖ サバフェスの設定がベースでバイナリログ有効
❖ sync_binlog = 1
❖ master_info_repository = TABLE
❖ jemallocをmalloc-libで指定
❖ グラフの補足
❖ p_s ON DEFはperformance_schema = ONでsetup_instruments
テーブルはMySQL起動時からそのまま
❖ p_s ON ALL NOはperformance_schema = O...
秒間接続数
❖ 使用ツールはsysbench 0.4.12
❖ ソースいじって接続/切断のみ行う(sb_oltp.cの変更)
❖ 5.7のread only transactionによる影響を避けるため
❖ 実行コマンド (いくつかのオプションは意味なし)...
p_s ON DEF p_s ON ALL NO p_s OFF
5.7.7 rc 65736.14 69510.64 70812.38
5.6.24 45844.23 46250.22 54732.32
65736.14
69510.64 7...
結果
❖ 5.6と比較して5.7は1.29倍に向上
❖ performance_schemaが有効でも性能低下が小さくなっ
た
❖ Another reason to disable performance schema と5.6の
頃は言われ...
sysbenchのpoint selectとoltp
❖ 使用ツールはsysbench 0.5
❖ innodb_adaptive_hash_index(AHI)のon/offでも取得
❖ 実行コマンド (--oltp-read-onlyのon/offで切り替え)
/usr/local/sysbe...
16 32 64 128 256 512 1024 2048
5.7.7 RC AHI OFF 93230.57 134177.31 155719.92 154230.98 152003.94 142739.32 134340.30 13388...
16 32 64 128 256 512 1024 2048
5.7.7 RC AHI OFF 92086.55 130876.14 153566.93 152308.99 149976.94 141061.57 132981.85 13240...
16 32 64 128 256 512 1024 2048
5.7.7 RC AHI OFF 4764.07 6833.42 8172.77 8259.21 8124.87 7742.40 7383.91 7346.33
5.7.7 RC A...
16 32 64 128 256 512 1024 2048
5.7.7 RC AHI OFF 4782.36 6928.01 8069.38 8162.27 8042.56 7651.16 7303.08 7261.21
5.7.7 RC A...
16 32 64 128 256 512 1024 2048
5.7.7 RC AHI OFF 3312.25 4822.17 5612.62 5737.13 5744.13 5785.36 5820.95 5801.96
5.7.7 RC A...
16 32 64 128 256 512 1024 2048
5.7.7 RC AHI OFF 3221.69 4766.49 5518.11 5636.35 5648.45 5698.23 5739.69 5721.01
5.7.7 RC A...
結果
❖ 5.7より5.6の方が良い結果に
❖ 5.7の方が良いというベンチ結果も見かけるのでコア数に
よっては5.7が逆転するかもしれません。
❖ 5.6も5.7もperformance schemaの性能への影響は軽微
❖ メモリ使用率の増...
tpcc mysql
❖ 使用ツールはtpcc mysql
❖ innodb_adaptive_hash_index(AHI)のon/offでも取得
❖ warehouse数は1000、データ量は約84GB
❖ 実行コマンド
./tpcc_start 
-h 192...
p_s OFF p_s ON p_s OFF iblog 2G
5.7.7 RC AHI OFF 49567.20 49311.80 43501.87
5.7.7 RC AHI ON 46238.93 46712.73 41631.40
5.6...
結果
❖ 5.6より5.7の方が1.12倍程良い結果に
❖ 全てバッファに載る時と異なりAHIは無効な方がスコア
上昇
❖ 5.6の設定をほぼそのまま流用しているので5.7で挙動の
変わったinnodb_io_capacityや追加された
in...
まとめ
❖ 秒間接続数については5.6と比較し5.7でかなり良くな
り、performance schemaが有効であっても性能低下が
大幅減少
❖ 全てのデータ・インデックスがバッファに載る環境下で
は1CPU6Core12Threadだと5...
今後やりたい事
❖ 2CPU12Core24Threadの場合に傾向が変わるか試した
い
❖ LinkBenchも試してみたい
❖ 5.7でtpcc mysqlのスコアがどこまで伸ばせるか試してみ
たい
おわり
Upcoming SlideShare
Loading in …5
×

MySQL5.6と5.7性能比較

23,965 views

Published on

MyNA会 2015年4月 LT資料

Published in: Technology
  • Be the first to comment

MySQL5.6と5.7性能比較

  1. 1. MySQL5.6、5.7 性能比較 MyNA会 2015年4月 2015/04/22
  2. 2. 誰 ❖ いとう ひろゆき ❖ サーバ運用/保守が仕事 ❖ ネットワークからOS、ミドルウェアまでアプリケーシ ョン以外はなんでも面倒を見ないといけない(程度の差 はあります) ❖ MySQL好き。酒好き。
  3. 3. 比較内容 ❖ 秒間接続数 ❖ sysbenchのpoint selectとoltp (全部メモリに載るデータ 量) ❖ tpcc-mysql (i/oバウンド warehouse 1000) ❖ tpcc-mysql以外は3回実行した平均値 ❖ 更新が行われるベンチマークはバイナリログ有効
  4. 4. ベンチマーク環境
  5. 5. ❖ ベンチマークサーバ ❖ HP DL360p G8v2 ❖ CPU Intel Xeon E5-2643 v2 @ 3.50GHz (1CPU = 6Core) ❖ MEM 8GB x 4 = 32GB (DDR3 1866 MHz) ❖ ioDrive2 785GB ❖ Driver version: 3.2.6 build 1212, Firmware v7.1.15, rev 110356 Public ❖ NIC Intel I350 ❖ OS CentOS 6.6(2.6.32-504.12.2.el6.x86_64) ❖ ベンチマーククライアント ❖ HP DL360 G7 ❖ CPU Intel Xeon L5640 @ 2.27GHz (2CPU = 6Core x 2) ❖ MEM 4GB x 12 = 48GB (DDR3 1333 MHz) ❖ NIC Broadcom NetXtreme II BCM5709 ❖ OS CentOS 5.9(2.6.18-348.16.1.el5)
  6. 6. ❖ MySQLバージョン(rpm版使用) ❖ 5.7.7 RC 及び 5.6.24 ❖ ベンチマークツール ❖ sysbench 0.4.12 ❖ sysbench 0.5 ❖ tpcc mysql ❖ ファイルシステム(ioDrive2) ❖ ext4 (マウントオプション defaults,discard,noauto) ❖ nobarrierはお好みでどうぞ(ベンチスコア的には差がほぼ出ない)
  7. 7. ❖ MySQLの設定について ❖ サバフェスの設定がベースでバイナリログ有効 ❖ sync_binlog = 1 ❖ master_info_repository = TABLE ❖ jemallocをmalloc-libで指定
  8. 8. ❖ グラフの補足 ❖ p_s ON DEFはperformance_schema = ONでsetup_instruments テーブルはMySQL起動時からそのまま ❖ p_s ON ALL NOはperformance_schema = ONで setup_intrumentsテーブルのENABLEDが全部NO ❖ p_s OFFはperformance_schema = OFF
  9. 9. 秒間接続数
  10. 10. ❖ 使用ツールはsysbench 0.4.12 ❖ ソースいじって接続/切断のみ行う(sb_oltp.cの変更) ❖ 5.7のread only transactionによる影響を避けるため ❖ 実行コマンド (いくつかのオプションは意味なし) /usr/local/sysbench-0.4.12-conn/bin/sysbench --test=oltp --oltp-table-size=4500000 --max-requests=10000000 --mysql-table-engine=innodb --db-ps-mode=disable --mysql-engine-trx=yes --oltp-read-only --oltp-skip-trx --oltp-dist-type=special --oltp-connect-delay=0 --oltp-reconnect-mode=query --db-driver=mysql --mysql-user=sbtest --mysql-password=sbtest-pw --mysql-db=sbtest --mysql-host=192.168.1.201 --mysql-port=3306 --num-threads=100 run
  11. 11. p_s ON DEF p_s ON ALL NO p_s OFF 5.7.7 rc 65736.14 69510.64 70812.38 5.6.24 45844.23 46250.22 54732.32 65736.14 69510.64 70812.38 45844.23 46250.22 54732.32 0.00 10000.00 20000.00 30000.00 40000.00 50000.00 60000.00 70000.00 80000.00 connection/sec
  12. 12. 結果 ❖ 5.6と比較して5.7は1.29倍に向上 ❖ performance_schemaが有効でも性能低下が小さくなっ た ❖ Another reason to disable performance schema と5.6の 頃は言われてたけどperformance schemaを有効にして も十分に性能が出るように ❖ http://yoshinorimatsunobu.blogspot.jp/2013/08/another- reason-to-disable-performance.html
  13. 13. sysbenchのpoint selectとoltp
  14. 14. ❖ 使用ツールはsysbench 0.5 ❖ innodb_adaptive_hash_index(AHI)のon/offでも取得 ❖ 実行コマンド (--oltp-read-onlyのon/offで切り替え) /usr/local/sysbench/bin/sysbench --test=/usr/local/sysbench/lua/{select.lua,oltp.lua} --rand-init=on --db-driver=mysql --oltp-table-size=3000000 --rand-type=uniform --oltp-read-only=on --oltp-tables-count=16 --oltp_range_size=10 --mysql-host=192.168.1.201 --mysql-db=sbtest5 --mysql-user=sbtest --mysql-password=sbtest-pw --max-time=60 --max-requests=0 --num-threads=$thread run
  15. 15. 16 32 64 128 256 512 1024 2048 5.7.7 RC AHI OFF 93230.57 134177.31 155719.92 154230.98 152003.94 142739.32 134340.30 133880.94 5.7.7 RC AHI ON 87251.97 137263.40 161623.94 160893.68 158637.70 150716.10 140546.41 139165.31 5.6.24 AHI OFF 97616.61 144368.07 168376.69 167154.31 165216.11 162568.52 158373.95 153905.08 5.6.24 AHI ON 100025.28 145748.47 172930.27 171950.26 170353.84 167765.84 162946.05 159623.20 0.00 20000.00 40000.00 60000.00 80000.00 100000.00 120000.00 140000.00 160000.00 180000.00 200000.00 point select/sec(p_s OFF, AHI OFF/ON)
  16. 16. 16 32 64 128 256 512 1024 2048 5.7.7 RC AHI OFF 92086.55 130876.14 153566.93 152308.99 149976.94 141061.57 132981.85 132406.67 5.7.7 RC AHI ON 91214.45 133418.87 158803.59 158084.53 156000.35 147968.10 138302.29 137188.81 5.6.24 AHI OFF 95474.05 142081.07 165413.99 163975.11 162374.72 159555.46 155139.21 152374.50 5.6.24 AHI ON 94232.55 143946.65 170104.02 168966.97 167369.97 164885.78 161088.61 156426.85 0.00 20000.00 40000.00 60000.00 80000.00 100000.00 120000.00 140000.00 160000.00 180000.00 200000.00 point select/sec(p_s ON ALL NO, AHI OFF/ON)
  17. 17. 16 32 64 128 256 512 1024 2048 5.7.7 RC AHI OFF 4764.07 6833.42 8172.77 8259.21 8124.87 7742.40 7383.91 7346.33 5.7.7 RC AHI ON 4807.67 6934.68 8379.94 8539.08 8416.65 8089.83 7687.28 7822.40 5.6.24 AHI OFF 5037.95 7280.28 8935.29 9160.34 9023.46 8611.28 8020.99 7671.76 5.6.24 AHI ON 5097.87 7283.62 8955.68 9249.72 9126.06 8796.68 8235.72 7836.46 0.00 1000.00 2000.00 3000.00 4000.00 5000.00 6000.00 7000.00 8000.00 9000.00 10000.00 oltp read only(p_s OFF, AHI OFF/ON)
  18. 18. 16 32 64 128 256 512 1024 2048 5.7.7 RC AHI OFF 4782.36 6928.01 8069.38 8162.27 8042.56 7651.16 7303.08 7261.21 5.7.7 RC AHI ON 4633.42 6924.78 8207.64 8324.11 8225.11 7958.90 7742.86 7676.04 5.6.24 AHI OFF 5000.51 7329.14 8773.49 8993.02 8836.51 8452.61 7866.79 7580.31 5.6.24 AHI ON 4715.48 7127.48 8851.58 9055.14 8935.24 8612.84 8124.00 7717.21 0.00 1000.00 2000.00 3000.00 4000.00 5000.00 6000.00 7000.00 8000.00 9000.00 10000.00 oltp read only(p_s ON ALL NO AHI OFF/ON)
  19. 19. 16 32 64 128 256 512 1024 2048 5.7.7 RC AHI OFF 3312.25 4822.17 5612.62 5737.13 5744.13 5785.36 5820.95 5801.96 5.7.7 RC AHI ON 3203.87 4864.01 5696.03 5867.22 5858.92 5900.85 5937.38 5912.34 5.6.24 AHI OFF 3643.40 5086.16 6066.08 6274.88 6310.38 6329.28 6277.22 5862.39 5.6.24 AHI ON 3578.94 5119.49 6147.50 6399.06 6415.58 6469.96 6429.96 6015.50 0.00 1000.00 2000.00 3000.00 4000.00 5000.00 6000.00 7000.00 oltp read write(p_s OFF, AHI OFF/ON)
  20. 20. 16 32 64 128 256 512 1024 2048 5.7.7 RC AHI OFF 3221.69 4766.49 5518.11 5636.35 5648.45 5698.23 5739.69 5721.01 5.7.7 RC AHI ON 3404.34 4854.30 5697.94 5830.58 5835.69 5864.50 5879.40 5810.05 5.6.24 AHI OFF 3462.21 5043.21 6005.48 6220.22 6203.31 6260.86 6214.00 5835.05 5.6.24 AHI ON 3444.42 5022.39 6046.22 6298.78 6308.85 6361.26 6320.70 5917.57 0.00 1000.00 2000.00 3000.00 4000.00 5000.00 6000.00 7000.00 oltp read write(p_s ON ALL NO, AHI OFF/ON)
  21. 21. 結果 ❖ 5.7より5.6の方が良い結果に ❖ 5.7の方が良いというベンチ結果も見かけるのでコア数に よっては5.7が逆転するかもしれません。 ❖ 5.6も5.7もperformance schemaの性能への影響は軽微 ❖ メモリ使用率の増加と秒間接続数の減少を許容出来るなら有 効にしてsetup_instruments のENABLEDを全部NOにするの もあり ❖ AHIは有効な方が性能は良い
  22. 22. tpcc mysql
  23. 23. ❖ 使用ツールはtpcc mysql ❖ innodb_adaptive_hash_index(AHI)のon/offでも取得 ❖ warehouse数は1000、データ量は約84GB ❖ 実行コマンド ./tpcc_start -h 192.168.1.201 -d tpcc -u tpcc -p tpcc-pw -w 1000 -c 32 -r 0 -l 900 -i 60
  24. 24. p_s OFF p_s ON p_s OFF iblog 2G 5.7.7 RC AHI OFF 49567.20 49311.80 43501.87 5.7.7 RC AHI ON 46238.93 46712.73 41631.40 5.6.24 AHI OFF 44180.40 44046.87 37641.67 5.6.24 AHI ON 41281.13 41748.27 35582.67 49567.20 49311.80 43501.87 46238.93 46712.73 41631.40 44180.40 44046.87 37641.67 41281.13 41748.27 35582.67 0.00 10000.00 20000.00 30000.00 40000.00 50000.00 60000.00 tpcc mysql
  25. 25. 結果 ❖ 5.6より5.7の方が1.12倍程良い結果に ❖ 全てバッファに載る時と異なりAHIは無効な方がスコア 上昇 ❖ 5.6の設定をほぼそのまま流用しているので5.7で挙動の 変わったinnodb_io_capacityや追加された innodb_page_cleanersを調整したりするともっと性能向 上するかも
  26. 26. まとめ ❖ 秒間接続数については5.6と比較し5.7でかなり良くな り、performance schemaが有効であっても性能低下が 大幅減少 ❖ 全てのデータ・インデックスがバッファに載る環境下で は1CPU6Core12Threadだと5.6の方が優勢 ❖ i/oヘビーな状態では5.7が優勢でAHIはOFFの方が優勢
  27. 27. 今後やりたい事 ❖ 2CPU12Core24Threadの場合に傾向が変わるか試した い ❖ LinkBenchも試してみたい ❖ 5.7でtpcc mysqlのスコアがどこまで伸ばせるか試してみ たい
  28. 28. おわり

×