1

新しい仕事を始めたばかりで、アナリストのコンピューターが100Mbpsでネットワークに接続されていることに気づきました。MySQLサーバーに対して実行するODBCクエリは、簡単に500MB以上を返す可能性があり、サーバーの負荷が高い場合、DBAは実行に時間がかかりすぎるため、優先度の低いジョブを強制終了するようです。

私の質問はこれです...このサーバー時間のどれだけがリクエストの実行に費やされ、どのくらいの時間がクライアントにデータを返すのに費やされますか?ネットワーク接続を1Gbpsにアップグレードすることで、クエリ速度を向上させることができますか?

(理由を更新):問題のデータベースは、レポートのニーズに対応するために構築されており、大量のデータが含まれています。通常、SASやExcelなどの外部アプリケーションでは、このデータのサブセットをきめ細かく処理するため、大量のデータが送信される理由になります。クエリの構造は不十分ではありません。クエリは非常に単純で、適切な結合/インデックスなどが使用されています。この質問はクエリ関連のパフォーマンスではなく、一般的なMySQLのパフォーマンスに関係していることに気付いたため、投稿のタイトルから「クエリ」を削除しました。ギガビット接続を使用している人が、適切な量のデータを返すクエリを実行することで、実際にいくつかの結果を定量化できることを期待していました。その後、接続速度を100Mbに制限して、同じクエリを再実行できます。

イーサネットの速度で状況を改善できる場合は、ネットワーク接続をアップグレードするための私の主張を議論するのに役立つ定量化可能な結果が必要でした。

ありがとうロブ

4

3 に答える 3

3
  1. 基準。MySQLには、クエリにかかる時間を決定するための多くのツールがあります。たぶん、あなたは本当に悪い質問をしているのです。遅いクエリログを使用します。
  2. MySQLから/で500MBのデータを送信/保存するのはなぜですか?
于 2010-04-16T22:04:06.493 に答える
2

データ量をクエリの時間で割ると、答えが得られます。100Mbpsの容量に近づいている場合は、IOの問題が発生します。

于 2010-04-16T22:05:17.140 に答える
1

私の疑いはイエスです。そのはず。

MySQLシェルでは、次のコマンドを実行します。

完全なプロセスリストを表示

マシン上でクエリの状態を確認します。「ネットからの読み取り」または「ネットへの書き込み」に類似した状態が表示された場合は、ネットワーク送信がMySQLに直接影響していることを意味します。IOStatの結果を見て、システムが使用しているIOの量を確認することもできます。システムが管理対象スイッチ上にある場合は、そこでの負荷も確認することをお勧めします。

参照:プロセスリストを表示

参照:ステータス定義

于 2010-04-16T22:04:11.633 に答える