2012-02-15 5 views
3

私は自分のサイトの検索オプションを作りたいと思っています。楽しみにして、少なくとも自分で作ろうと決心しました(失敗した場合は、常にGoogleカスタム検索があります)。緩やかな検索方法

問題は、私はこのモンスターに近づく方法を知らない!ここでの要件は以下のとおりです。

  • ないすべてのキーワードが検索に必要となります
  • 共通(「ビッグ幸せな世界」のための1つの検索では、それはまた、「ビッグ世界」「など幸せな世界」で検索します必要があります)スペルミスの考慮事項(データベース、編集差分、あらかじめ定義されている一般的なミスのリストなど)。
  • タイトルのemphesisで検索します。
  • 吸ってはいけない

私はそれのために私の古い友人のGoogleを検索しましたが、私が見つけた唯一の合理的なものは、件名に関する学術レベルの論文でした(英語は私の母国語ではありません。

短いので:誰かがチュートリアル、記事、例を始めるのに良い場所を知っていますか?

ありがとうございます。

+0

実際に全文検索エンジンを構築したいのですが(そういうものが一般的に呼ばれています)、既存のプロジェクトに推奨したいのですか? –

+0

私はテキスト検索エンジンを構築したいと思っています(投稿数の少ない単一のサイト用)が、既存のプロジェクトも非常に歓迎されます。 –

答えて

2

独自の検索エンジンを作成したい場合は、apache luceneは機能の大部分を占める成熟したオープンソースライブラリです。

luceneを使用すると、まずあなたの情報にインデックスを付けます(IndexWriterを使用)。これはオフラインで行われ、索引が作成されます。
郵便番号 - IndexSearcherを使用して、照会に一致する文書を検索します。

「どのように動作するか」に関する理論的な知識が必要な場合は、information retrievalを参照してください。開始するのに適した場所はスタンフォードですintroduction to information retrieval

5

あなたが試みることができるいくつかのオプションがあります:

  • のApache Luceneの(PHPベースの実装は、Zend Frameworkの中に存在する)
  • ElasticSearch(Luceneの上にRESTのようなAPIを提供します)
  • は、あまりにも他の人のおそらくたくさんXapianの
  • スフィンクス

+0

+1 - スフィンクスは素晴らしいオープンソース検索サーバーです。 –

関連する問題