このガイドについて

このガイドでは、Apache Solr の重要な機能とすべての機能について説明します。

Solr は https://solr.dokyumento.jp/ から無料でダウンロードできます。

このガイドは、高レベルのドキュメントを提供することを目的としており、百科事典のように網羅的であり、クックブックのようなものではありません。 新規開発者からアプリケーションを拡張したりトラブルシューティングを行ったりする経験豊富な開発者まで、幅広いニーズに対応できるように構成されています。Solr に関する信頼できる情報が必要なときはいつでも、アプリケーションライフサイクルのどの時点でも役立ちます。

提示されている資料は、基本的な検索概念に精通しており、XML を読めることを前提としています。Lucene を直接操作したり、Solr インストールへのカスタム拡張機能を開発したりする場合は Java の知識が役立ちますが、Java プログラマーであることは前提としていません。

ホストとポートの例

Solr の実行時のデフォルトポートは 8983 です。このガイドのサンプル、URL、スクリーンショットには、Solr が使用するポート番号は構成可能であるため、異なるポートが表示される場合があります。

Solr のインストールをカスタマイズしていない場合は、例に従う際にポート 8983 を使用するか、例に示されているポート番号を使用するように独自のインストールを構成してください。

同様に、URL の例では全体で localhost を使用しています。Solr をホストしているサーバーから離れた場所から Solr にアクセスしている場合は、localhost を Solr が実行されている適切なドメインまたは IP に置き換えてください。

たとえば、次のようなサンプルクエリを提供する場合があります。

https://127.0.0.1:8983/solr/gettingstarted/select?q=brown+cow

この URL には、ローカルで変更する必要がある可能性のある項目がいくつかあります。まず、サーバーが "www.example.com" で実行されている場合は、"localhost" を適切なドメインに置き換えます。ポート 8983 を使用していない場合は、それも置き換えます。最後に、"gettingstarted" (コレクションまたはコア名) を、実装で使用している適切なものに置き換える必要があります。URL は次のようになります。

http://www.example.com/solr/mycollection/select?q=brown+cow

ディレクトリパス

パス情報は、solr.home を基準に指定されます。これは、Solr のメインインストール下にある場所であり、Solr のコレクションとその conf および data ディレクトリが保存されます。

多くの場合、これはインストールの server/solr ディレクトリにあります。ただし、特にインストールがこれをカスタマイズしている場合は、例外が発生する可能性があります。

このガイドのいくつかのケースでは、例は "techproducts" の例から構築されています (つまり、コマンド bin/solr -e techproducts で Solr を起動しました)。この場合、solr.home は自動的に作成された example/ ディレクトリのサブディレクトリになります。

このディレクトリに含まれるものの詳細については、「Solr Home」のセクションも参照してください。

API の例

Solr には現在、共存する 2 つのスタイルの API があります。1 つ目は、Solr が時間の経過とともに開発されるにつれて、やや有機的に成長してきましたが、2 つ目の「V2 API」と呼ばれるものは、最新化され、自己文書化された API インターフェースで、元の API の多くを再設計しています。

多くの場合、すべてではありませんが、API 呼び出しのパラメータと出力は 2 つのスタイル間で同じです。すべての場合において、使用されるパスとエンドポイントは異なります。

このガイド全体を通して、「V1 API」と「V2 API」というラベルの付いたセクションで、両方のスタイルの例を追加しました。 このガイドの 7.2 バージョンでは、これらの例はまだ完了していません。ガイドの今後のバージョンがリリースされるにつれて、さらに多くの範囲が追加される予定です。

v2 API」のセクションでは、新しい API 構造の使用方法、必要に応じて無効にする方法など、詳細について説明しています。

すべてのAPIは、リクエストのステータスと処理時間を記述したレスポンスヘッダーを返します。一部のAPIでは、リクエストに使用されたパラメータも含まれます。このガイドの多くの例では、このヘッダー情報が省略されています。これは、任意のリクエストにomitHeader=trueパラメータを追加することで、ローカルで実行できます。

特別なインライン注釈

特別な注釈は、これらのページ全体に含まれています。いくつかの種類の注釈があります。

情報ブロックは、知っておくと役立つ追加情報を提供します。
重要ブロックは、必ず知っておいていただきたい情報を提供します。
ヒントブロックは、役立つヒントを提供します。
注意ブロックは、注意する必要があるシナリオや設定に関する詳細を提供します。
警告ブロックは、危険な可能性のある変更やアクションについて警告するために使用されます。