読者です 読者をやめる 読者になる 読者になる

Knowledge

オープンソースで情報共有のサービス「Knowledge」を作っています。ブログでは、サービスの説明や開発で得た情報などを書いていきます。https://support-project.org/knowledge_info/index

全文検索エンジン - 「Apache Lucene」

開発メモ

全文検索エンジン

  • 全文検索エンジンとは、文章の中で特定のキーワードで検索できるエンジンです
  • 全文検索エンジンは「Apache Lucene」を使ってみました
    • Googleのように、検索の結果はキーワードとの関連が高いものから順にならんでいます
      • TF-IDFとかそんな処理ロジックみたいです
    • 全文検索エンジンは、登録されたナレッジ、添付ファイルの中身のテキストを検索する際に使っています

Apache Lucene - Welcome to Apache Lucene

Apache Luceneを使ってみて(感想)

  • 以前開発したシステム「Lucene」を使っていたので、今回も利用してみる事にしてまみました
    • ElasticsearchやSolrを使う事も考えたのですが、いったん生でLuceneを利用しています
      • Elasticsearch / Solr は全文検索サーバーで、内部でLuceneを使っているようです

Elasticsearch.org Open Source Distributed Real Time Search & Analytics | Elasticsearch

Apache Solr -

  • バージョンを見てびっくり

    • 最新のバージョンは、、、「4.10.3」!?
    • 私が使って見た事があるバージョンは、「2.4.1」だったので、かなり実装に差異があった
      • 以前の使い方で書くと「duplicated」が発生する(でも動いているのでいったんそのまま)
  • kuromojiの日本語形態素解析のAnalyzerが簡単につかえるので、日本語を使った検索がすごく簡単に導入できるようになってました

  • ソースは公開しています。ご参考までに

support-project/knowledge · GitHub