ポイ探の掲示板、コラム等の検索を追加
ポイ探の掲示板やコラム&ニュースなどは全てデータベースから読み込んでいる。そのため、サイト内の全文検索をするNamazuを使うには、一回ファイルに吐き出す必要がある。それはデータベースの容量+検索のための容量を確保する必要があり、さらにインデックスのスペースも確保する必要がある。
そこで、MySQLの全文検索を利用した。MySQLの全文検索は英単語には利用できるが、日本語で利用するにはちょっとやらなければならない処理がある。まずはkakasi等で分かち書きをし、それを英数字の文字列に変更する。例えばbin2hex等を利用すれば良い。
bin2hexにすると文字列が全て英数字になる。それをMySQLのFULLTEXTのフィールドにインサートする。検索する場合は、同様にkakasi等で分かち書きした単語をMATCH〜AGAINSTで検索する。複数の単語になる場合は、ANDで結べば良い。
これで全文検索が出来る。検索速度も0.02〜0.10秒くらいで検索できる。と言っても、まだ数千件のレベルなので、LIKEによる検索でもさほど変わらないだろう。
投稿者 Su-Jine : 2007年01月19日 22:28
↑ポイ探とポイントオンが提携
Su-Jine の独り言
↓ポイ探の縁起札
このエントリーのトラックバックURL: