[前][次][番号順一覧][スレッド一覧]

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]