mysql:2864
From: "Mitsuru Maruno" <"Mitsuru Maruno" <maruno@xxxxxxxxxx>>
Date: Thu, 14 Dec 2000 15:31:09 +0900
Subject: [mysql 02864] 処理速度について
はじめましてmarunoと申します。(MySQLビギナーです)
実は、今度MySQLを使用する予定で、現在他のRDBMSとの比較を行ったり
しています。それで、簡単なレコード取得テストを行っていますが、ど
うしても、納得のいかない現象と遭遇した為、質問しました。
テストの内容は、単純なテーブルを作成して(50万件のデータ)、この
テーブルからSQL文で指定した条件にマッチするレコードを取得すると
いうものです。SQLで指定する条件の数を、1,10,20,30・・・と増やして
レコード取得の時間を計測します。
SQLは以下のような物です。
select * from test where id=5 and subid in (1,2,3,4,5・・・);
<テーブルは、1レコード長が102バイト(固定長)です。インデックス使用>
このテストをやっていると、条件を9~15件指定した場合のみ処理速度が
遅くなりました。ちなみに、このときの処理時間は、0.15~0.20秒位です。
1~8件指定、16件以上指定の場合は、0.00~0.01秒といったものです。
(処理時間はpsqlの実行時に表示される時間を使用しています。)
どうして、こんなに処理時間が異なるのでしょうかね・・・?
指定する検索条件が増えるにつれて、速度が遅くなるハズ?なんでしょう
けど・・・。
このテスト環境は、
サーバ
CPU Pen2-266MHz
MEM 128MB
OS: RedHat Linux6.2J
MySQL-3.23.28-1.src.rpmをrebuildしてインストール
クライアント:
CPU Pen3-600MHz
MEM 128MB
OS: Win2000sp1
mysql-3.23.28-gamma-win.zip
一応、以下の事を試してみました。
・別のサーバマシン(RedHatLinux6.2J+MySQL-3.23.28-1.src.rpm)を使用。
(結果)同じ現象
・サーバ、クライアントともにLinuxを使用(別マシン)
(結果)同じ現象
・サーバにWin98(mysql-3.23.28-gamma-win.zip)を使用
(結果)処理速度の低下はなし
Linuxサーバ側で、tcpdumpでパケットの内容をチェックしてみましたが、
SQL文発行から、データを送り終えるまでのパケットの送信時間の長さが
9~15件指定のものと、その他のものでは約0.18秒程の差がありました。
また、送られるパケットの順番も、何か違うような・・・。
処理が早いものはまとめて(続けて)クライアント側へデータが送られて
います。(この辺が関係しているのかなと・・・)
(cl・・・クライアント、svr・・・サーバー)
・9~15件指定の場合
cl -> svr
svr -> cl
cl -> svr <---このパケット送信が約0.18秒位遅れている
svr -> cl
cl -> svr
・16件~件指定の場合
cl -> svr
svr -> cl
svr -> cl
cl -> svr <---最初のパケットから0.01秒もかかっていない
・30件指定の場合
cl -> svr
svr -> cl
svr -> cl
svr -> cl
cl -> svr <---最初のパケットから0.01秒もかかっていない
cl -> svr <---最初のパケットから約0.15秒
どなたか、同じような現象を体験されている人はいないでしょうか?
よろしくお願いします。
0-------10--------20--------30--------40--------50--------60--------70
株式会社日本テレソフト Maruno Mitsuru
maruno@xxxxxxxxxx
maruno@xxxxxxxxxx
======================================================================
-> 2864 2000-12-14 15:31 ["Mitsuru Maruno" <ma] 処理速度について 2865 2000-12-14 17:50 ┗["Mitsuru Maruno" <ma] 2867 2000-12-14 20:56 ┗[Seiji Tateyama <tate] 2871 2000-12-15 09:42 ┗["Mitsuru Maruno" <ma] 2872 2000-12-15 10:50 ┗["Mitsuru Maruno" <ma]