【アパッチソーラー】

Apache Solr とは?

最終更新:
💡 Luceneの力を企業規模で使うための「検索の司令塔」。

Apache Luceneを基盤とするオープンソースの検索プラットフォーム。文書を索引に登録し、HTTP経由で全文検索やカテゴリ別の件数集計などを提供する。

📌 このページのポイント
文書を索引に登録して検索する 文書 アプリ 登録 HTTP Apache Solr Lucene 検索結果 + カテゴリ別の件数 例:本 12件 / 家電 8件 件数は説明用の例 SolrCloud:シャードとレプリカ ZooKeeperの情報で クラスタを把握
SolrはLuceneを基盤に検索機能を提供。SolrCloudでは分散構成を扱う。
ひよこ ひよこ
Solrは何をするもの?
ペンギン先生 ペンギン先生
Webサービスやアプリに検索機能を加えるためのソフトウェアだよ。検索したい文書を索引に登録し、アプリがHTTPで検索を依頼すると結果を返すんだ。
ひよこ ひよこ
Luceneとは別物なの?
ペンギン先生 ペンギン先生
Luceneは検索の基盤となるライブラリ。Solrはそれを使って、HTTPからの利用や分散構成などを提供する検索プラットフォームだよ。
ひよこ ひよこ
ファセット検索って何?
ペンギン先生 ペンギン先生
検索に一致した商品を「本:12件、家電:8件」のようにカテゴリと件数にまとめる機能だよ。この件数は説明用の例。利用者が結果を見渡し、絞り込む手がかりになるんだ。
ひよこ ひよこ
SolrCloudでは何を分散するの?
ペンギン先生 ペンギン先生
索引をシャードという単位に分け、コピーであるレプリカを配置するよ。検索を受けたノードが各シャードへ問い合わせ、応答をまとめて返すんだ。ZooKeeperのクラスタ情報も利用するよ。
ひよこ ひよこ
サーバーが落ちても検索できる?
ペンギン先生 ペンギン先生
必要な各シャードのレプリカと通信できれば検索を続けられるよ。シャードが応答できないと既定では失敗する。部分結果を許す設定もあるけれど、全件を調べた結果と同じ扱いにはできないね。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「Apache Solr」って出てきたら「LuceneベースのOSS全文検索エンジン」と思えればだいたいOK!
📖 おまけ:英語の意味
「Apache Solr」 = Luceneを基盤とする検索プラットフォームの名前
💬 Apacheプロジェクトの一つだよ。検索の基盤になるライブラリLuceneと、検索サービスの機能をまとめたSolrを区別しよう。

参考資料

← 用語集にもどる