ウォークスルー Cognitive Searchの設定
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
注意
Azure Cognitive Searchは将来的に廃止され、Sitecoreは今後このサービスのサポートを終了します。
SitecoreでAzure Searchを使うには、まずSitecoreインスタンスでAzure Searchサービスを設定する必要があります。
Searchサービスを作成する
AzureでSearchサービスを作成するには、以下の手順に従ってください。
-
Azureポータルにログインし、「More services」をクリックしてSearchサービスを作成してください。
-
フィルターフィールドで「Search service」と入力し、「Search services」をクリックしてください。

-
Search servicesウィンドウで「追加」をクリックします。

-
新しいSearchサービスウィンドウで:
-
Search Serviceインスタンスの名前を指定してください。
-
自分に合ったサブスクリプションの種類を選びましょう。
-
自分に合ったリソースグループ、所在地、価格帯を選びましょう。
!注Sitecoreは15の検索インデックスを使用しているため、最低限標準価格帯が必要です。

-
-
Search Serviceインスタンスが設定されたら、「 作成」をクリックします。
-
新しく作成した検索サービスを開き、「 設定」→ キーをクリックしてください。
-
プライマリ管理者キーかセカンダリ管理者キーをapiKeyパラメータにコピーします。どのキーを使うかは関係ありませんが、そのキーは接続文字列に使われます。
接続文字列のフォーマット
クラウドSearchのデフォルトの接続文字列名はcloud.searchで、以下の情報が含まれています。
- serviceUrl – 検索サービスAPIのHTTPS URL(例: https://dk-test.search.windows.net)。
- apiVersion – は日付形式に従います。例えば2017-11-11( APIのバージョンに関する詳細情報を参照)。
- apiKey – Azure管理ポータルから取得するサービスの管理者キーです。
!注バージョン9.1以降Sitecore APIバージョンを2017-11-11に設定してください。他のサポートバージョンについては、Azure Search互換性表を参照してください。
接続文字列の形式は以下の通りです:
!注Azure Cognitive Search for xConnectはこの機能をサポートしていません。
ジオレプリケートシナリオ
Sitecoreはジオレプリケートシナリオを含むSearchサービスをサポートしています。この種のシナリオを使用するには:
-
2つ以上のSearchサービスインスタンスを作成します。
-
パイプセパレーター(|)で接続文字列を追加します。例えば、searchservice1とsearchservice2のような2つの検索サービスがあり、それらをジオレプリケート(地理的複製)で使いたい場合は、以下の接続文字列を使用しなければなりません。
高度なスケーリングシナリオ
高度なスケーリングシナリオでは、インデックス専用の検索サービスを利用するのがベストプラクティスです。これを設定するには:
- 新しい接続文字列を追加します(例えば、 cloud.search.analytics)。
- 対応するインデックスをこの接続文字列名で設定します:

検索プロバイダーとしてAzureを指定してください
デフォルトではSitecoreはSolr検索プロバイダーが有効化された状態で配布されています。
代わりにAzureを使うには、web.configファイルで検索提供者としてAzureを指定する必要があります。
インデックスの再構築
Sitecoreが完全に稼働するようにインデックスを再構築する必要があります。
インデックスを再構築するために:
-
Sitecoreログインページ(http:// {your_instance}/sitecore/login)にアクセスし、管理者の認証情報でログインしてください。
-
Sitecore Launchpadでコントロール パネルをクリックし、「 インデックスマネージャー」を選択してください。
-
すべてのインデックスを選択して再構築するには、インデックスマネージャー のページで「 すべて選択」→「 再構築」をクリックしてください。
!注インデックスの再構築は時間がかかり、15分以上かかることもあります。
インデックスが再構築されると、Sitecoreの検索インデックスはAzureポータルのSearchサービス ウィンドウに表示されます。

Map the Azure field types
Azure Searchは以下の エンティティデータモデル(EDM)フィールドタイプを使用しています。フィールドタイプを正しくマッピングしているか確認するために、表を参照してください。
フィールドタイプ
概要
Edm.String
オプション
、例えば単語区切りや語幹整理など。Collection(Edm.String)
全文検索のためにトークン化可能な文字列のリストです。コレクション内のアイテム数に上限はありませんが、ペイロードサイズの上限16MBはコレクションにも適用されることを覚えておいてください。
Edm.Boolean
trueまたはfalseの値を含みます。
Edm.Int32
32ビット整数値を含みます。
Edm.Int64
64ビット整数値を含みます。
Edm.Double
二重精度の数値データを使用。
Edm.DateTimeOffset
日付と時刻の値はOData V4形式で表されます。例えば:
yyyy-mm-ddTHH:mm
.fffZyyyy-mm-ddTHH:mm
.fff[+|-]HH。> [!注]
> DateTime フィールドの精度はミリ秒に制限されます。サブミリ秒精度の DateTime 値をアップロードすると、返される値はミリ秒単位で切り上げられます。例えば:
> 2015-04-15T10:30
> 2015-04-15T10:30.7550000Z。
.NetとSitecore間の異なるタイプのマッピングの定義方法を見るには、App_Config\Sitecore\ContentSearch.Azureのsitecore\contentsearch\indexConfigurations\defaultCloudIndexConfiguration\CloudTypeMapperノードに移動します。\Sitecore。ContentSearch。Azure。DefaultIndexConfiguration.configファイル。
!注すべてのカスタムフィールドのmap要素は次のように定義しなければなりません:
マップフィールド
コンポーネントが使用するすべてのフィールドをインデックス設定セクションでリストアップする際は、以下のように記載するのがベストプラクティスです。
- sitecore\contentSearch\configuration\indexes\index\configuration\fieldMap
サポートされる属性は以下の通りです:
属性
概要
fieldName
ルセンとソルのために定義されたフィールドの名前。
cloudFieldName
クラウドで定義されたフィールド名。文字、数字、アンダースコアのみを含められます。
> [!注]
> 最初の文字は文字でなければなりません。
boost
ブースト属性を使って、あるフィールドの重要度を他より高めましょう。
format
この属性は、 DateTime 型フィールドに対して設定する必要があります。サポートされている値は yyyy-MM-ddTHH:mm
.fffZ.settingType
settingTypeプロパティは以下の条件でなければなりません
.ContentSearch.Azure.CloudSearchFieldConfiguration, Sitecore.ContentSearch.AzureAzure Searchへの支援
クエリサポートとファセットサポートを正しく設定するために、サポートリファレンスを 活用してくださいAzure Search。
複数のオープンHTTP接続を設定しましょう
Azure Searchプロバイダーが使用する 接続数は 以下の設定で管理できます:
以下の状況では設定値を調整する必要があります:
- 値を下げる - HTTPを集中的に使っている他のアプリケーションがある場合。
- 値を上げる - アプリケーションが高負荷の場合、新しい接続の作成に時間がかかりすぎたり、作成に失敗したりします。これは、超過上限が設定されすぎているためです。