Tasuku SUENAGA
a****@razil*****
2007年 2月 22日 (木) 22:22:22 JST
ブラジルの末永です。 Katsuya Utada wrote: > うただです > > |GB単位の文書を1テーブルに格納するのは厳しくはないと思います。 > |おそらく、Senna 0.9.0のバグに遭遇していると予想されます。 > |Sennaの開発版では問題が修正されている可能性があります。 > > 開発版で試したところMySQLが落ちなくなりました。 > ありがとうございます。 やほーい!!よかったです。 > 1GB程の文書を1テーブルでテストしていて > ヒット件数が多いキーワードでorder byを併用すると > 応答が遅い場合があるのですが、order by(とlimit)を併用しても > 高速化する方法はないでしょうか? > > mysql> select num from test where match(title,text) against('アメリカ'); > > mysql> select num from test where match(title,text) against('アメリカ') > order by num limit 45070,2; > > mysql> select num from test where match(title,text) against('アメリカ') > limit 45070,2; 2つめのクエリですが、 http://qwik.jp/senna/mysql_binding.html の「2indパッチとは」の項にある、 「4. 全文検索以外の条件でソートする処理が遅い問題」 にあたると思います。 「2ind-patchの使い方」の項を参考に、 select num from test force index(PRIMARY) where match(title,text) against('アメリカ') order by num limit 45070,2; とすると高速化されると思います。 お試しください。 --- Tasuku SUENAGA <a****@razil*****>