Ubuntu14.04にSolr5.2.1をインストールする方法
Solrとのコラボレーションで作成
序章
Solrは、ApacheLuceneに基づく検索エンジンプラットフォームです。 これはJavaで記述されており、Luceneライブラリを使用してインデックスを実装します。 XMLやJSONなどのさまざまなRESTAPIを使用してアクセスできます。 これは彼らのウェブサイトからの機能リストです:
- 高度な全文検索機能
- 大量のWebトラフィック用に最適化
- 標準ベースのオープンインターフェイス-XML、JSON、HTTP
- 包括的なHTML管理インターフェイス
- 監視のためにJMXを介して公開されるサーバー統計
- 線形にスケーラブルな自動インデックスレプリケーション、自動フェイルオーバーおよびリカバリ
- ほぼリアルタイムのインデックス作成
- XML構成で柔軟かつ適応可能
- 拡張可能なプラグインアーキテクチャ
この記事では、二項分布を使用してSolrをインストールします。
前提条件
このチュートリアルに従うには、次のものが必要です。
-
少なくとも1GBのUbuntu14.04ドロップレット。ただし、必要なRAMの量は、特定の状況に大きく依存します。
ステップ1—Javaのインストール
SolrにはJavaが必要なので、このステップではJavaをインストールします。
完全なJavaインストールプロセスはこの記事で完全に説明されていますが、少し異なるプロセスを使用します。
まず、apt-getを使用してpython-software-properties
をインストールします。
- sudo apt-get install python-software-properties
default-jdk
またはdefault-jre
パッケージを使用する代わりに、最新バージョンのJava8をインストールします。 これを行うには、非公式のJavaインストーラリポジトリを追加します。
- sudo add-apt-repository ppa:webupd8team/java
リポジトリをインデックスに追加することを受け入れるには、ENTER
を押す必要があります。
次に、ソースリストを更新します。
- sudo apt-get update
最後に、apt-getを使用してJava8をインストールします。 Java SEPlatformProductsおよびJavaFXのOracleBinaryCodeライセンス契約に同意する必要があります。
- sudo apt-get install oracle-java8-installer
ステップ2—Solrのインストール
このセクションでは、Solr5.2.1をインストールします。 まず、Solrディストリビューションをダウンロードします。
まず、このページで適切なミラーを見つけます。 次に、ミラーからsolr-5.2.1.tgz
のリンクをコピーします。 たとえば、http://apache.mirror1.spango.com/lucene/solr/5.2.1/
を使用します。
次に、ホームディレクトリにファイルをダウンロードします。
- cd ~
- wget http://apache.mirror1.spango.com/lucene/solr/5.2.1/solr-5.2.1.tgz
次に、サービスインストールファイルを抽出します。
- tar xzf solr-5.2.1.tgz solr-5.2.1/bin/install_solr_service.sh --strip-components=2
そして、スクリプトを使用してSolrをサービスとしてインストールします。
- sudo bash ./install_solr_service.sh solr-5.2.1.tgz
最後に、サーバーが実行されているかどうかを確認します。
- sudo service solr status
これで始まる出力が表示されるはずです。
Found 1 Solr nodes:
Solr process 2750 running on port 8983
. . .
ステップ3—コレクションの作成
このセクションでは、単純なSolrコレクションを作成します。
Solrは複数のコレクションを持つことができますが、この例では1つだけを使用します。 新しいコレクションを作成するには、次のコマンドを使用します。 この場合、パーミッションエラーを回避するためにSolrユーザーとして実行します。
- sudo su - solr -c "/opt/solr/bin/solr create -c gettingstarted -n data_driven_schema_configs"
このコマンドでは、gettingstarted
はコレクションの名前であり、-n
は構成セットを指定します。 デフォルトでSolrによって提供される3つの構成セットがあります。 この場合、スキーマレスのものを使用しました。つまり、任意のフィールドに任意の名前を指定でき、タイプが推測されます。
これでコレクションが追加され、データの追加を開始できます。 デフォルトのスキーマには、id
という1つの必須フィールドのみがあります。 他のデフォルトフィールドはなく、動的フィールドのみがあります。 すべてが明確に説明されているスキーマを確認したい場合は、ファイル/opt/solr/server/solr/gettingstarted/conf/schema.xml
を参照してください。
ステップ4—ドキュメントの追加とクエリ
このセクションでは、Solr Webインターフェースを調べて、コレクションにいくつかのドキュメントを追加します。
Webブラウザーを使用してhttp://your_server_ip:8983/solr
にアクセスすると、SolrWebインターフェースが表示されます。
Webインターフェイスには、使用中に発生した問題をデバッグするために使用できる多くの有用な情報が含まれています。
コレクションはコアに分割されているため、Webインターフェイスにはコアへの参照が多数あります。 現在、コレクションgettingstarted
には、gettingstarted
という名前のコアが1つだけ含まれています。 左側にコアセレクタープルダウンメニューが表示され、gettingstarted
を選択して詳細を表示できます。
gettingstarted
コアを選択したら、ドキュメントを選択します。 ドキュメントには、Solrが検索できる実際のデータが格納されています。 スキーマレス構成を使用したため、任意のフィールドを使用できます。 以下をDocument(s)フィールドにコピーして、次の例のJSON表現を含む単一のドキュメントを追加しましょう。
{
"number": 1,
"president": "George Washington",
"birth_year": 1732,
"death_year": 1799,
"took_office": "1789-04-30",
"left_office": "1797-03-04",
"party": "No Party"
}
ドキュメントの送信をクリックして、ドキュメントをインデックスに追加します。 しばらくすると、次のように表示されます。
Status: success
Response:
{
"responseHeader": {
"status": 0,
"QTime": 509
}
}
類似または完全に異なる構造でさらにドキュメントを追加できますが、1つのドキュメントだけで続行することもできます。
次に、左側のクエリを選択して、追加したばかりのドキュメントをクエリします。 この画面のデフォルト値では、クエリの実行をクリックした後、追加した数に応じて、最大10個のドキュメントが表示されます。
{
"responseHeader": {
"status": 0,
"QTime": 58,
"params": {
"q": "*:*",
"indent": "true",
"wt": "json",
"_": "1436827539345"
}
},
"response": {
"numFound": 1,
"start": 0,
"docs": [
{
"number": [
1
],
"president": [
"George Washington"
],
"birth_year": [
1732
],
"death_year": [
1799
],
"took_office": [
"1789-04-30T00:00:00Z"
],
"left_office": [
"1797-03-04T00:00:00Z"
],
"party": [
"No Party"
],
"id": "1ce12ed2-add9-4c65-aeb4-a3c6efb1c5d1",
"_version_": 1506622425947701200
}
]
}
}
結論
利用できるオプションは他にもたくさんありますが、これでSolrが正常にインストールされ、自分のサイトで使用できるようになりました。