[Senna-dev 580] Re: MySQL5.0でのパフォーマンス悪化 及び 2indパッチの不具合の件

Back to archive index

Tetsuro IKEDA te.ik****@jpta*****
2007年 4月 25日 (水) 13:29:28 JST


こんにちは。いけだです。

うたださん、さらなる情報ありがとうございます!!

> お世話になっております
> うただです
> 
> On Wed, 25 Apr 2007 11:24:49 +0900, Tetsuro IKEDA wrote:
>  |こんにちは。池田です。
>  |
>  |うたださん、追加情報ありがとうございます。
>  |
>  |なるほど、、、Handlerレベルでは同じ処理量みたいですね。
>  |また、IO処理が重いということでも無いようですね。
>  |
>  |たびたびすみません。「パソコン」以外の4文字のキーワードで、
>  |遅いキーワードはありますか?
>  |
>  |「パソコン」vs「パソ」のみに着目すると、
>  |フレーズ検索 vs 非フレーズ検索という面もありますので。
> 
> ご指摘ありがとうございます。
> 応答に30秒程必ずかかるキーワードは
> 「パソコン」のみでした。他のフレーズ検索は通常一秒以内に
> レスポンスが帰ってきます。
> なぜこのワードのみなのかは不明です。
> 他にもあるかもしれませんが、見つかりましたらご報告させていただきます。
> 
>  |
>  |
>  |> 池田様
>  |> 
>  |> お世話になっております
>  |> うただです
>  |> 
>  |> On Tue, 24 Apr 2007 19:44:21 +0900, Tetsuro IKEDA wrote:
>  |>  |こんにちは。池田@tritonnプロジェクトです。
>  |>  |
>  |>  |うたださん、情報ありがとうございます。
>  |>  |よろしければ以下についてもいただけないでしょうか?
>  |> 
>  |> ご指摘ありがとうございます。
>  |> こちらで特定のキーワードで遅い場合の値を取って見ました。
>  |> 
>  |>  |- show statusで得ることができる"Handler_XXX" (XXXにはHandler API
>  |>  |の名前が入る)の値が、遅いキーワードと速いキーワードでそれぞれ
>  |>  |どのようになっているか。
>  |>  |# 投げる前にflush statusを実行して値をクリアして取得してみてください。
>  |> 
>  |> # 遅いキーワード実行時のステータス
>  |> mysql> flush status;
>  |> Query OK, 0 rows affected (0.00 sec)
>  |> 
>  |> mysql> select count(*) from sitest where match(keywords) against('パソコン');
>  |> +-----------+
>  |> | count(id) |
>  |> +-----------+
>  |> |    278108 | 
>  |> +-----------+
>  |> 1 row in set (28.07 sec)
>  |> 
>  |> mysql> show status like 'handle%';
>  |> +----------------------------+--------+
>  |> | Variable_name              | Value  |
>  |> +----------------------------+--------+
>  |> | Handler_commit             | 0      | 
>  |> | Handler_delete             | 0      | 
>  |> | Handler_discover           | 0      | 
>  |> | Handler_prepare            | 0      | 
>  |> | Handler_read_first         | 0      | 
>  |> | Handler_read_key           | 0      | 
>  |> | Handler_read_next          | 278109 | 
>  |> | Handler_read_prev          | 0      | 
>  |> | Handler_read_rnd           | 0      | 
>  |> | Handler_read_rnd_next      | 0      | 
>  |> | Handler_rollback           | 0      | 
>  |> | Handler_savepoint          | 0      | 
>  |> | Handler_savepoint_rollback | 0      | 
>  |> | Handler_update             | 0      | 
>  |> | Handler_write              | 14     | 
>  |> +----------------------------+--------+
>  |> 15 rows in set (0.00 sec)
>  |> 
>  |> # 速いキーワードの時のステータス
>  |> mysql> flush status;
>  |> Query OK, 0 rows affected (0.00 sec)
>  |> 
>  |> mysql> select count(id) from sitest where match(keywords) against('パソ');
>  |> +-----------+
>  |> | count(id) |
>  |> +-----------+
>  |> |    278229 | 
>  |> +-----------+
>  |> 1 row in set (0.07 sec)
>  |> 
>  |> mysql> show status like 'handle%';
>  |> +----------------------------+--------+
>  |> | Variable_name              | Value  |
>  |> +----------------------------+--------+
>  |> | Handler_commit             | 0      | 
>  |> | Handler_delete             | 0      | 
>  |> | Handler_discover           | 0      | 
>  |> | Handler_prepare            | 0      | 
>  |> | Handler_read_first         | 0      | 
>  |> | Handler_read_key           | 0      | 
>  |> | Handler_read_next          | 278230 | 
>  |> | Handler_read_prev          | 0      | 
>  |> | Handler_read_rnd           | 0      | 
>  |> | Handler_read_rnd_next      | 0      | 
>  |> | Handler_rollback           | 0      | 
>  |> | Handler_savepoint          | 0      | 
>  |> | Handler_savepoint_rollback | 0      | 
>  |> | Handler_update             | 0      | 
>  |> | Handler_write              | 14     | 
>  |> +----------------------------+--------+
>  |> 15 rows in set (0.00 sec)
>  |> 
>  |> query_cacheは無効にして試しました。
>  |> 
>  |>  |
>  |>  |- 遅いキーワードの時のvmstat等によるリソースのボトルネック
>  |> 遅いキーワードselect時のvmstat
>  |> procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
>  |>  r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa
>  |>  1  0     32 1263552  18456 2441644    0    0     0     0 1005    11 25  0 75  0
>  |>  1  0     32 1263552  18456 2441644    0    0     0     0 1003     8 25  0 75  0
>  |>  1  0     32 1263488  18464 2441636    0    0     0    10 1007    15 25  0 75  0
>  |>  1  0     32 1263488  18464 2441636    0    0     0     0 1003    10 25  0 75  0
>  |>  1  0     32 1263424  18464 2441636    0    0     0     0 1003     9 25  0 75  0
>  |>  1  0     32 1263424  18464 2441636    0    0     0     0 1003     9 25  0 75  0
>  |>  1  0     32 1263360  18464 2441636    0    0     0     0 1003     8 25  0 75  0
>  |>  1  0     32 1263360  18464 2441636    0    0     0     4 1005    11 25  0 75  0
>  |>  1  0     32 1263296  18464 2441636    0    0     0     0 1003     9 25  0 75  0
>  |>  1  0     32 1263296  18468 2441632    0    0     0    38 1021    11 25  0 75  0
>  |>  1  0     32 1263296  18468 2441632    0    0     0     0 1003     9 25  0 75  0
>  |>  1  0     32 1263232  18468 2441632    0    0     0     0 1003     9 25  0 75  0
>  |>  1  0     32 1257344  18468 2441632    0    0     0     0 1003    10 25  0 75  0
>  |>  0  0     32 1272256  18468 2441632    0    0     0     0 1005    11 20  0 80  0
>  |> 
>  |> 何もしていない時のvmstat
>  |>  0  0     32 1272232  18456 2441644    0    0     0     0 1003     9  0  0 100  0
>  |>  0  0     32 1272248  18456 2441644    0    0     0     0 1003     9  0  0 100  0
>  |> 
>  |> CPU使用率以外はあまり違いがありませんでした。。
>  |> 要望ばかりで申し訳ありませんが、よろしくお願いいたします・・。
>  |> 
>  |>  |
>  |>  |07/04/24 に Katsuya Utada<utada****@themi*****> さんは書きました:
>  |>  |> お世話になっております
>  |>  |> うただです
>  |>  |>
>  |>  |>  |2ind機能はまだ未完成の部分がある&不具合があると認識しております。
>  |>  |>  |こうした具体的な情報は非常にありがたいです。
>  |>  |> 2ind利用時のパフォーマンスに関してですが
>  |>  |> 当方でもMySQL5.0.37+tritonn-1.0.2.mysql-5.0.37.senna-1.0.4(ngram)
>  |>  |> の環境で、特定のキーワードで応答が極端に遅くなる場合があります。
>  |>  |> 2ind ON/OFF時でも応答時間に変化は見られませんでした。。
>  |>  |> 遅延の発生する条件が分かりませんが、
>  |>  |> 一応情報としてレポートさせて頂きます。
>  |>  |>
>  |>  |> 安定性が上がったのは大変助かっております。
>  |>  |> 今後の改良に期待致しております。
>  |>  |>  |mysql> show senna status\G
>  |>  |>  |*************************** 1. row ***************************
>  |>  |>  |                  Table: sitest
>  |>  |>  |               Key_name: keywords
>  |>  |>  |            Column_name: keywords
>  |>  |>  |               Encoding: euc_jp
>  |>  |>  |             Index_type: NGRAM
>  |>  |>  |              Normalize: ON
>  |>  |>  |            Split_alpha: OFF
>  |>  |>  |            Split_digit: OFF
>  |>  |>  |           Split_symbol: OFF
>  |>  |>  |     Initial_n_segments: 512
>  |>  |>  |        Senna_keys_size: 4624378
>  |>  |>  |   Senna_keys_file_size: 113319936
>  |>  |>  |     Senna_lexicon_size: 2503513
>  |>  |>  |Senna_lexicon_file_size: 67182592
>  |>  |>  |     Senna_inv_seg_size: 181833728
>  |>  |>  |   Senna_inv_chunk_size: 485888000
>  |>  |>
>  |>  |>  |mysql> select count(*) from sitest where match(keywords) against('コン');
>  |>  |>  |+----------+
>  |>  |>  || count(*) |
>  |>  |>  |+----------+
>  |>  |>  ||   371907 |
>  |>  |>  |+----------+
>  |>  |>  |1 row in set (0.11 sec)
>  |>  |>  |
>  |>  |>  |mysql> select count(*) from sitest where match(keywords) against('パソコン');
>  |>  |>  |+----------+
>  |>  |>  || count(*) |
>  |>  |>  |+----------+
>  |>  |>  ||   278108 |
>  |>  |>  |+----------+
>  |>  |>  |1 row in set (30.95 sec)
>  |>  |>
>  |> 
>  |> ---
>  |> Katsuya Utada <utada****@themi*****>
>  |> 
>  |> _______________________________________________
>  |> Senna-dev mailing list
>  |> Senna****@lists*****
>  |> http://lists.sourceforge.jp/mailman/listinfo/senna-dev
>  |
>  |-----------------------------------------
>  |Tetsuro IKEDA, te.ik****@jpta*****
>  |Kachidoki, Tokyo, Jpan
>  |http://www.scs.co.jp/mysql/
>  |-----------------------------------------
>  |
>  |_______________________________________________
>  |Senna-dev mailing list
>  |Senna****@lists*****
>  |http://lists.sourceforge.jp/mailman/listinfo/senna-dev
>  |
> 
> ---
> Katsuya Utada <utada****@themi*****>
> 
> _______________________________________________
> Senna-dev mailing list
> Senna****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/senna-dev

-----------------------------------------
Tetsuro IKEDA, te.ik****@jpta*****
Kachidoki, Tokyo, Jpan
http://www.scs.co.jp/mysql/
-----------------------------------------




Senna-dev メーリングリストの案内
Back to archive index