---
title: "攻略:Solrの設定方法"
slug: "walkthrough--setting-up-solr"
abstract: "SitecoreでSolrの設定方法を学びましょう"
---
# 攻略:Solrの設定方法

このウォークスルーでは、Sitecoreで使用するためのSolrの設定方法を説明します。Solrで利用可能なすべての設定オプションを網羅しているわけではなく、SitecoreでSolrを使用するための特定の設定詳細のみを文書化しています。

> !注あなたのコンテンツSearchコアをホストするSolrサーバーは、xDB Search Indexコアをホストするサーバーとは異なる場合があります。

Solrのドキュメントの指示に従ってSolrをインストールしてください。Solrのウェブサイトにはリソースが掲載されています。そこにホストされている[ウィキ](http://wiki.apache.org/solr/)は特に役立ちます。

> !注各インデックスごとに別々のコアを使用する必要があります。[Solr Wikiのこのトピック](http://wiki.apache.org/solr/CoreAdmin)では、複数コアの概念を紹介しています。

このウォークスルーでは、以下の方法を説明します:

-   [Solr用のXMLスキーマを入力する](https://doc.sitecore.com/xp/ja/developers/92/platform-administration-and-architecture/walkthrough--setting-up-solr.html#UUID-93e4b1f8-837c-4f32-b7d6-99427f6b7dfa_N1528811068737 "Populate an XML schema for Solr")
-   [SolrのXMLスキーマを生成する](https://doc.sitecore.com/xp/ja/developers/92/platform-administration-and-architecture/walkthrough--setting-up-solr.html#UUID-93e4b1f8-837c-4f32-b7d6-99427f6b7dfa_N1528811088643 "Generate an XML Schema for Solr")
-   [Solrが正しく動作しているか確認してください](https://doc.sitecore.com/xp/ja/developers/92/platform-administration-and-architecture/walkthrough--setting-up-solr.html#UUID-93e4b1f8-837c-4f32-b7d6-99427f6b7dfa_N1528438014638 "Verify that Solr is running correctly")
-   [SitecoreをSolrと連携させる設定](https://doc.sitecore.com/xp/ja/developers/92/platform-administration-and-architecture/walkthrough--setting-up-solr.html#UUID-93e4b1f8-837c-4f32-b7d6-99427f6b7dfa_N1528725280956 "Configure Sitecore to work with Solr")
-   [検索インデックスの再構築](https://doc.sitecore.com/xp/ja/developers/92/platform-administration-and-architecture/walkthrough--setting-up-solr.html#UUID-93e4b1f8-837c-4f32-b7d6-99427f6b7dfa_N1528438097356 "Rebuild the search Indexes")

## Solr用のXMLスキーマを入力する

XMLスキーマを入力する前に、SitecoreでSolr検索プロバイダーを有効にする必要があります。Web.configファイルのEnabling a Search Provider設定は、Solrが有効であることをSitecore Sitecore知らせ、次にインデックスにアクセスする際にSolrサーバーに接続を試みます。

<add key="search:define" value="Solr" />

Solrはドキュメントを扱う際に定義されたスキーマを使用します。既存のスキーマを**Populate Solrマネージドスキーマ**ツールで修正できます。このツールはSitecoreのフィールドを自動的に入力し、Sitecoreが必要とするすべてのフィールドが存在していることを保証します。

システムインデックスフィールドを変更しない限り、管理スキーマファイルにフィールドを追加することで、このスキーマにさらにフィールドを追加できます。Solrスキーマに**Populate Solr Managed Schema**ツールを入力した後にのみこれを推奨します。**solr管理者スキーマ**のページを使って追加のフィールドを追加できます。

Solrスキーマを埋めるには以下の手順に従ってください:

1.  Solrが提供する設定例フォルダである \_default (古いSolrバージョンではbasic\_configs )をSOLR\_DIR/server/solr/configsetsフォルダからSOLR\_DIR/server/solrフォルダにコピーし、コピーしたフォルダ名を適切なインデックス名と同じように付けます。
    
2.  作成したフォルダ(SOLR\_DIR/server/solr/CORE\_NAME)にcore.propertiesというテキストファイルを作成し、以下の値を指定します。
    
    name=CORE\_NAME
    config=solrconfig.xml
    update.autoCreateFields=false
    dataDir=data
    
3.  ステップ1で作成したフォルダのconfフォルダーの下にmanaged-schemaファイルを開いてください。
    
    :::文字で
    
    1.  <uniqueKey>id</uniqueKey>の値を\_uniqueidに設定します。
    2.  fieldsセクションで、\_uniqueidのフィールド構成を追加します:<field name="\_uniqueid" type="string" indexed="true" required="true" stored="true"/>
    3.  変更を保存してください。:::
4.  すべてのコンテンツ検索インデックスについて、ステップ1とステップ2を繰り返してください。
    
    > !注xdbインデックスではこれをしないでください。 [代わりにこの説明](https://doc.sitecore.com/xp/ja/developers/92/platform-administration-and-architecture/solr-managed-schemas.html "Solr managed schemas") に従ってください。
    
5.  Solrを始めましょう。
    
6.  Sitecore始めて、Control Panelに行け。
    
7.  **Schema Populate**ウィンドウで、埋めたいインデックスを選択してください:
    
    ![Solr\_managed\_schemas-Picture\_2-rId12-1299452201.png](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/92/platform-administration-and-architecture/images/Solr_managed_schemas-Picture_2-rId12-1299452201.png)
    
8.  「 **ポピュレート」**をクリックします。
    

## SolrのXMLスキーマを生成する

手動スキーマ(「クラシック」な方法)は、Solrschema.xmlファイルを使用することで可能です:

1.  Sitecore.ContentSearch.Solr.DefaultIndexConfiguration.configファイルでContentSearch.Solr.SolrSchemaClass設定の値をclassicに変更します。
2.  solrconfig.xmlファイルで<schemaFactory>クラスをClassicIndexSchemaFactoryに設定してください。

このトピックの初期バージョンにはより多くの情報が含まれています。

## Solrが正しく動作しているか確認してください

新しいschema.xmlファイルを入力し、solrconfig.xmlファイルを更新した後、Solrが正しく動作することを確認する必要があります。

Solrが正しく動作しているか確認するために:

1.  Solrが実行されていないことを確認してください。新しい構成を読み込むために完全な再起動が必要です。
    
2.  Solrを始めましょう。
    
3.  出力ログファイルを確認してください。エラーがなければ、Solr管理ページを開きます。
    
    管理ページを開くには、ブラウザで以下のURLを入力してください:[http://localhost:8983/solr/admin](http://localhost:8983/solr/admin):
    
    ![Walkthrough\_setting\_up\_solr\_80-Picture\_4-rId18-1572053160.png](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/92/platform-administration-and-architecture/images/Walkthrough_setting_up_solr_80-Picture_4-rId18-1572053160.png)
    
4.  Core **Admin**をクリックしてからコアをクリックしてください。この例では、itembucketsという1つのコアがあります:
    
    ![Walkthrough\_setting\_up\_solr-Picture\_5-rId19-1329314777.png](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/92/platform-administration-and-architecture/images/Walkthrough_setting_up_solr-Picture_5-rId19-1329314777.png)
    

Solr管理ページが見えてログファイルにエラーがなければ、Solrは正しく動作している証拠です。

## SitecoreをSolrと連携させる設定

solr.search接続文字列はSolrサーバーの所在地を指定します。

この例はデフォルトのSolr位置を指定しています:

<add name="solr.search" connectionString="https://localhost:8983/solr" >

以下のSolr専用設定はSitecore.ContentSearch.Solr.DefaultIndexConfiguration.configファイルにあります。

-   Searchプロバイダーの有効化
    
    この設定はSitecoreにSolrが有効であることを知らせ、次にインデックスにアクセスする際にSolrサーバーに接続しようとします。接続できない場合はエラーが発生します。
    
    <setting name="ContentSearch.Provider" value="Solr" /> 
    
-   Search Resultsの最大数
    
    これはSitecore.ContentSearch.configファイルにあるグローバル設定です。
    
    この設定は、クエリで制限が指定されていない場合、1回のリクエストで取得できる最大ドキュメント数(例えばTake(10))を含みます。パフォーマンスの理由から、クエリを実行する際には実行中のクエリから返される結果数を覚え、ページングなどで正しく処理することが重要です。
    
    <setting name="ContentSearch.SearchMaxResults" value="500" />
    
-   バッチモードの有効化
    
    アイテムがインデックス化されると、作成された文書は検索インデックスに保存されます。デフォルトのLuceneプロバイダーが有効化されると、各書き込みはローカルディスク上のファイルにフラッシュされます。Solrプロバイダーで文書を書く場合は、更新はネットワーク経由で移動しなければなりません。
    
    ![Walkthrough\_setting\_up\_solr-Picture\_26-rId18-197943143.png](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/92/platform-administration-and-architecture/images/Walkthrough_setting_up_solr-Picture_26-rId18-197943143.png)
    
    インデックスが再構築されると大量のドキュメント更新が作成され、多くのネットワークトラフィックが発生し効率が悪くなる可能性があります。したがって、バッチを使うことでインデックスのサイズが大きくなるにつれて更新プロセスの最適化に役立ちます。
    
    <setting name="ContentSearch.Update.BatchModeEnabled" value="true" />
    
    <setting name="ContentSearch.Update.BatchSize" value="500" />
    
    バッチモード(デフォルトで有効)はこれらの文書更新を受け取り、バッチが一定サイズに達した場合にのみSolrサーバーにフラッシュされます。
    
    ![Walkthrough\_setting\_up\_solr-Picture\_27-rId19-2129959417.png](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/92/platform-administration-and-architecture/images/Walkthrough_setting_up_solr-Picture_27-rId19-2129959417.png)
    
    指数が増えるにつれて、このプロセスを最大限に活用するためにバッチサイズを増やすことをおすすめします。
    

## 検索インデックスの再構築

Solrのインデックスシステムを使い始める前に、まずSitecoreのコンテンツを再インデックスする必要があります。

Sitecore検索インデックスを再構築するには:

1.  **コントロールパネルで「****インデックスマネージャー**」をクリックします。
    
    ![Walkthrough\_setting\_up\_solr\_80-Picture\_13-rId22-745638333.png](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/92/platform-administration-and-architecture/images/Walkthrough_setting_up_solr_80-Picture_13-rId22-745638333.png)
    
2.  「**すべて選択**」を選び、「**再構築**」をクリックします。
    
    > !注以前にマーケティング定義を導入した場合、マーケティング定義のインデックスを選択する必要はありません。すでに再構築済みだからです。
    
    ![Walkthrough\_setting\_up\_solr-Picture\_15-rId21-1884229494.png](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/92/platform-administration-and-architecture/images/Walkthrough_setting_up_solr-Picture_15-rId21-1884229494.png)