部分探索の設定

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

適用対象

アパッチ・ソル。

xConnect Search Sitecore Apache Solr Edge N-Gram Tokenizerを用いた部分テキスト検索をサポートしています。単語Sitecoreの辺n-gramは、最小値が2、最大値が4で、トークンSi、Sit、Siteを生成します。2語文字列xConnect Searchの類似した辺n-gramは、トークンxC、xCo、xCon 、Se、Sea、Searを生成します。

!重要Solrスキーマを修正するには、JSONフォーマット済みコマンドのブロックを含むPOSTリクエストを、Solrコアのアクティブ版と再構築版の両方のhttps:///collection/schema/エンドポイントに送信します。それらは<core_name>と<core_name>_rebuildと名付けられます。

部分的なテキスト検索フィールドを追加

xConnect Searchロールは、以下の個人情報ファセットフィールドpersonal.firstname、personal.middlename、personal.lastname、emails.preferredemail.smtpaddressに対して部分検索が有効化されていることが事前に設定されています。

部分的なテキスト検索フィールドを追加するには:

  1. \App_data\solrcommands\10.0-or-later-schema-preparation.jsonファイルを両方のSolrコアに投稿してください。404エラーが出るかもしれませんが、これは普通のことです。

  2. \App_Data\solrcommands\schema.jsonファイルを開け。

  3. 事前に設定されたフィールドがある場所に新しいadd-copy-fieldコマンドを追加します。 sourceプロパティは部分探索を有効にしたいフィールドでなければならず、destプロパティは常にtextmatchでなければなりません。

    "add-copy-field": {   "source": "facets.personal.firstname_s",   "dest": "textmatch" }

    add-copy-fieldセクションでは、ソースデータの必要なバリエーション(エッジnグラムトークン)をtextmatchフィールドに集約します。

  4. Solrスキーマの後の修正を妨げる問題を避けるために、add-fieldセクションにfacets.personal.firstname_sフィールドを追加してください:

    "add-field": { "name": "facets.personal.firstname_s ", "type": "lowercase", "stored": false, "indexed": true,   "omitNorms": true }

  5. schema.jsonファイルを保存してください。

  6. schema.jsonファイルを両方のSolrコアに投稿します。

既存の部分テキスト検索フィールドを修正する

既存の部分テキスト検索フィールドを変更する必要がある場合は、まず元の構成を削除する必要があります。

部分的なテキスト検索フィールドを変更するには:

  1. \App_data\solrcommands\10.0-or-later-schema-preparation.jsonファイルを両方のSolrコアに投稿してください。404エラーが出るかもしれませんが、これは普通のことです。

  2. \App_Data\solrcommands\schema.jsonファイルを開け。

  3. 部分的なテキスト検索フィールドを変更するadd-copy-fieldコマンドの前に、元の設定を削除するコマンドを挿入してください:

    "delete-copy-field": { "source":"facets.personal.firstname_s", "dest":"textmatch" } "delete-field": { "name": "facets.personal.firstname_s" }

  4. schema.jsonファイルを保存してください。

  5. schema.jsonファイルを両方のSolrコアに投稿します。

部分テキスト検索の最適化

textmatchフィールドはマルチバリューtext_matchフィールドタイプとして設定されています。詳細はschema.jsonファイルのadd-fieldセクションを参照してください。

部分探索はtext_matchフィールドタイプ構成のfiltersセクションで最適化できます。デフォルト値は最小nグラムサイズを2、最大サイズを15に設定しています。2つの数値の間が大きいほど、より多くのインデックススペースが必要です。

部分的なテキスト検索を最適化するために:

  1. \App_data\solrcommands\10.0-or-later-schema-preparation.jsonファイルを両方のSolrコアに投稿してください。404エラーが出るかもしれませんが、これは普通のことです。

  2. \App_Data\solrcommands\schema.jsonファイルを開け。

  3. minGramSizeとmaxGramSizeプロパティを希望する値に変更してください:

    "filters":   { "class": "solr.LowerCaseFilterFactory" },   {     "class": "solr.EdgeNGramFilterFactory",     "minGramSize": "2",     "maxGramSize": "15",     "preserveOriginal": "true"   }

  4. schema.jsonファイルを保存してください。

  5. schema.jsonファイルを両方のSolrコアに投稿します。

部分テキスト検索を無効にする

部分探索が不要なら無効にしてパフォーマンスを向上させることができます。

部分テキスト検索を無効にするには:

  1. \App_data\solrcommands\10.0-or-later-schema-preparation.jsonファイルを両方のSolrコアに投稿してください。404エラーが出るかもしれませんが、これは普通のことです。

  2. \App_Data\solrcommands\schema.jsonファイルを開け。

  3. schema.jsonファイルから事前設定されたadd-copy-fieldセクションを削除してください:

    "add-copy-field":   {     "source": "facets.personal.firstname_s",     "dest": "textmatch"   },   {     "source": "facets.personal.middlename_s",     "dest": "textmatch"   },   {     "source": "facets.personal.lastname_s",     "dest": "textmatch"   },   {     "source": "facets.emails.preferredemail.smtpaddress_s",     "dest": "textmatch"   }

  4. schema.jsonファイルを保存してください。

  5. schema.jsonファイルを両方のSolrコアに投稿します。

この記事を改善するための提案がある場合は、 お知らせください!