web-dev-qa-db-ja.com

MySQL焼き出しを適切に実行するにはどうすればよいですか?

MySQLサーバーrpmを、Perconaサーバー、MariaDB、その他のフォークなど、他のフォークに対してパフォーマンステスト(別名:ベイクオフ)したい。この質問をすることで、適切なパフォーマンステストの設定の背後にある方法論をよりよく理解できることを願っています。私は実際のテストを実行するためにsysbenchを使用することを計画しましたが、私は何にでもオープンです。

  1. リンゴ同士の比較でテスト結果が得られ、RDBMSのみがバリアントであることを確認するには、どのような手順を踏む必要がありますか?
  2. どこから始めればよいですか?
  3. 結果を評価するにはどうすればよいですか?
  4. 何かアドバイスはありますか?
27
randomx

ここで私が最初に考えたのは

  1. それぞれがインストールされている3つのDBサーバー(同一のHW/OS構成)をセットアップする

    • MySQL
    • ペルコナ
    • MariaDB
  2. MONyog(評価版は30日間続く) でインストールされた4番目のサーバーを取得する

  3. MONyogに3つのDBサーバーを登録する

  4. MONyog でパフォーマンスメトリックグラフを使用するか、 MONyog で独自のグラフを設定します

  5. 裁量で3つすべてのDBサーバーに対してSysBenchを使用する

これは単なる基本的な概要です。信じてください、Monyog をそのまま使用できますMonYogのWebサイトで私の紹介文を確認してください(ページで自分の名前を探してください)。私は最終的に、私の紹介状の後にUtlimateバージョンを購入するように会社を確信しました。それが起こったように。

警告:3台のDBサーバーとSysbench Readyが用意され、MonYogを30日間使用できるようになるまで、Monyogを入手しないでください。

UPDATE 2011-06-20 13:18 EDT

InnoDBバッファープールを小さく保ち( innodb_buffer_pool_size のデフォルトは8M)、バイナリログを無効にしたままにした場合(インクルードしないでください) log-bin my.cnf内)、これらのメトリックを測定する必要があります

これらの多くはMONyogのMonitors/Advisorsセクションのデフォルトのグラフで、さらにグラフを作成して 他の必要なMySQLメトリックをチェックする にすることができます。 MONyogでは、グラフをCSVデータとしてエクスポートすることもできます。

UPDATE 2011-10-12 14:17 EDT

Perconaは、MySQLの複数のリリース間でベイクオフを実行しました

  • MySQL 4.1
  • MySQL 5.0
  • MySQL 5.1(組み込みInnoDBを使用)
  • MySQL 5.1とInnoDBプラグイン
  • MySQL 5.5
  • MySQL 5.6

すべてのテストは、設定されていないMySQLで実行されました。結果?

  • MySQL 4.1は最高のシングルスレッドを実行します
  • MySQL 5.1とInnoDBプラグインは、5.1 InnoDBが構築された5.5および5.6よりも複数のコアで拡張可能

これから何が得られますか? マルチコア拡張を有効にするには、MySQL 5.5/5.6を設定する必要があります

14
RolandoMySQLDBA

これは、データベースの事実上の業界ベンチマークであるTPC-Cであるため、非常に役立ちます http://www.tpc.org/tpcc/spec/tpcc_current.pdf

このベンチマークの実行を使用しない場合でも、テスト定義ドキュメントに含まれている情報は、データベースオプションをテストするための独自のベンチマークの設定に関する膨大な洞察を提供するはずです。

7
James Pulley