質問: php、mysqlで動作する検索プログラム プログラミング初級者です。 windows環境で、php、データベースmysqlにて、検索サイトを練習で作っていますが、フリーで何か良い検索エンジンのプログラムはありますか? 書籍の検索サイトをつくっていまして、商品データは4万、商品のタイトルは長くても30文字、説明文は長いもので1000文字くらいのデータで、検索クエリに対して、単純にsql文、likeでタイトルか説明文にワードが含まれているもの(ヒットしたもの)を画面に表示できるようにはなりました。 一応動くことが確認できたので、商品数を15万にふやしたところ、いきなり動作が重くなり、タイムアウトで画面が表示されなくなってしまいました。 sql分のlikeで呼び出すには処理能力に限界があり、ちゃんとした検索プログラムを組み込まないと高速に処理できないのかな?と思っています。 (そもそも、組み込んで使えるようなプログラムがあるのかもわかりませんが。。) 最終的には300万商品くらいは検索できるサイトにしたいと思ってまして、何か良いフリーの検索プログラムや、参考になりそうな書籍があれば是非ご紹介お願いいたします。 初級者なので、適切な質問になっていないかもしれませんが、お分かりのかた、アドバイスくださいませ。
回答: 検索を早くする方法はいくつかありますが環境がわからない為 1.indexを張る。 2.検索結果を別ファイルで持つ。 3.テーブル構成を変える。 4.dbサーバのスペックを変える 5.作り方にもよりますがプログラム側で取得したデータのjoin等を行う。 等々があります。 時間があるようでしたら 夢幻 http://www.yumemaboroshi.net/ で似たようなサイトをダウンロードしてどういう作り方をしているか見てみてはどうでしょう?