ユーザー辞書を作成する (SharePoint Server 2010)

 

適用先: SharePoint Server 2010

トピックの最終更新日: 2015-07-06

ユーザー辞書とは、特定の言語のワード ブレーカーがインデックス時またはクエリ時に分割できないものとして処理するトークンを指定するために、管理者が作成するファイルです。ユーザー辞書ファイルは製品には付属していません。ワード ブレーカーの動作を変更する言語ごとに、ユーザー辞書を別個に作成する必要があります。

注意

言語ごとに 1 つのユーザー辞書が、サーバー ファーム内のすべての Search Service アプリケーションに適用されます。

この記事の内容

  • ユーザー辞書を使用する理由

  • ユーザー辞書作成時の規則

  • ユーザー辞書を作成する

  • ユーザー辞書を各アプリケーション サーバーにコピーする

  • SharePoint Server Search 14 サービスを停止して再開する

  • フル クロールを実行する

  • サポートされている言語

ユーザー辞書を使用する理由

ユーザー辞書が必要かどうか、および必要な場合にどのエントリを含めるべきかを判断するには、ワード ブレーカーの動作を理解する必要があります。インデックス システムは、クロールしたコンテンツのインデックスを作成するときに、ワード ブレーカーを使用してトークンを分割します。クエリ プロセッサはクエリでワード ブレーカーを使用します。それぞれのケースで、使用するワード ブレーカーの言語をサポートするユーザー辞書が存在する場合、検索システムは、ユーザー辞書に対象の単語が存在するかどうかを判断したうえで、その単語にワード ブレーカーを使用するかどうかを判別します。ユーザー辞書に対象の単語がない場合、ワード ブレーカーは通常どおりに動作するので、トークンが複数のトークンに分割される可能性があります。ユーザー辞書に対象のトークンがある場合、そのトークンに対しては何も行われません。次の 2 つの例では、ワード ブレーカーの一般的な動作と、ユーザー辞書のエントリがワード ブレーカーの動作に及ぼす影響について説明します。

  • ワード ブレーカーによって、"IT&T" というトークンは、アンパサンド (&) の前後で "IT"、"&"、および "T" の 3 つのトークンに分割されることがあります。ただし、使用するワード ブレーカーと同じ言語のユーザー辞書に "IT&T" というトークンを登録すると、(クロール時やクエリ時に) そのトークンは分割されなくなります。ユーザー辞書に "IT&T" が登録されていると、ドキュメントに "IT" も "T" も含まれず "IT&T" は含まれている場合、"IT" と "T" を含み "IT&T" を含ないクエリの結果セットには、そのドキュメントは返されません。

  • Chemical Abstracts Service (CAS) 登録番号のような単語は、ワード ブレーカーの影響を受ける可能性があります。たとえば、ワード ブレーカーは、通常、ハイフンなどの特殊文字の前後の数字を別個の数字として分割します。たとえば、酸素の CAS 登録番号は 7782-44-7 です。この CAS 登録番号は、ワード ブレーカーの処理後に、7782、44、7 の 3 つの部分に分割されます。コーパスに表れる CAS 登録番号をユーザー辞書に追加することにより、検索システムがそれぞれの番号のインデックスを作成するときに、個々の数字への分割が行われなくなります。

正規化とシソーラス ファイル

通常はワード ブレーカーによって適用される、日付の正規化などの名前付きエンティティの正規化は、ユーザー辞書の用語には適用されません。ユーザー辞書上のすべての用語は、一致として扱われます。シソーラス ファイルに単語や数字がある場合、この点は特に大切です。たとえば、CAS 登録番号 "7782-44-7" がシソーラスの拡張セットにあり、ワード ブレーカーがこの番号をハイフンで 3 つに分割してしまう場合、この番号を含む拡張セットは適切に機能しない可能性があります。この場合、CAS 登録番号 "7782-44-7" を適切な言語のユーザー辞書に追加すると、問題が解決します。シソーラス ファイルの使用方法の詳細については、「シソーラス ファイルを管理する (SharePoint Server 2010)」を参照してください。

ユーザー辞書作成時の規則

ユーザー辞書は Unicode 形式のファイルです。各エントリは個別の行に記述し、復帰 (CR) および改行 (LF) で区切る必要があります。ユーザー辞書にエントリを追加する場合は、予期しない結果を避けるため、次の規則について考慮してください。

  • エントリでは、大文字と小文字は区別されません。

  • パイプ (|) 文字は使用できません。

  • 空白文字は使用できません。

  • シャープ記号 (#) は、エントリの冒頭には使用できませんが、エントリ中やエントリの末尾には使用できます。

  • パイプ、シャープ記号、空白文字以外の、英数字、句読点、記号、改行文字は使用できます。

  • エントリの最大長は 128 文字です (Unicode)。

次の表に、サポートされているエントリとサポートされていないエントリの例を示します。

表 1 - ユーザー辞書ファイルでサポートされているエントリとサポートされていないエントリの例

サポートされている サポートされていない

dogfood

dog food

3#

#3

For#sale

For|sale

ASP.NET

IT&T

(2-Methoxymethylethoxy)propanol

34590-97-8

C7H1603

ユーザー辞書のエントリ数に制限はありませんが、合計サイズが 2 GB を超えないようにすることをお勧めします。実際には、エントリ数を数千個程度に制限することをお勧めします。

ユーザー辞書を作成する

ユーザー辞書を作成するには、以下の手順を実行します。

ユーザー辞書を作成するには

  1. この手順を実行するユーザー アカウントがローカル コンピューターの Administrators グループに属するメンバーであることを確認します。

  2. クロール サーバーにログオンします。

  3. テキスト エディターで新しいファイルを開きます。

    前の「ユーザー辞書作成時の規則」の規則に従って、ユーザー辞書に登録する単語を入力します。

  4. [ファイル] メニューの [名前を付けて保存] をクリックします。

  5. [ファイルの種類] の一覧で [すべてのファイル] を選択します。

  6. [エンコード] 一覧で [Unicode] を選択します。

  7. [ファイル名] ボックスに、CustomNNNN.lex の形式でファイル名を入力します。ここで、"Custom" はリテラル文字列、NNNN はユーザー辞書を作成する対象の言語を表す 4 桁の 16 進コード、lex はファイル名拡張子です。有効なファイル名およびサポートされている言語の一覧については、後の「サポートされている言語」を参照してください。

  8. [保存先] の一覧で、ワード ブレーカーが保存されているフォルダーを参照します。既定では、このフォルダーは %ProgramFiles%\Microsoft Office Servers\14.0\Bin です。

    注意

    ユーザー辞書ファイルは、ローカル ファイル システムのこのフォルダーに保存されている場合のみ使用できます。たとえば、SharePoint サイトのみに保存されているユーザー辞書ファイルは使用できません。

  9. [保存] をクリックします。

  10. ファーム内に他のクロール サーバーも他のクエリ サーバーもない場合は、「SharePoint Server Search 14 サービスを停止して再開する」へ進みます。他のクロール サーバーまたは他のクエリ サーバーがある場合は、次の手順「ユーザー辞書を各アプリケーション サーバーにコピーする」へ進みます。

ユーザー辞書を各アプリケーション サーバーにコピーする

ファーム内の各アプリケーション サーバーにユーザー辞書のコピーを置く必要があります。

ユーザー辞書を各アプリケーション サーバーにコピーするには

  1. この手順を実行するユーザー アカウントが、ファーム内の各アプリケーション サーバー (各クロール サーバーまたはクエリ サーバー) の Administrators グループのメンバーであることを確認します。

  2. ファーム内の各アプリケーション サーバーで、ワード ブレーカーが保存されているフォルダーにユーザー辞書ファイルをコピーします。既定では、このフォルダーは %ProgramFiles%\Microsoft Office Servers\14.0\Bin です。

    注意

    ユーザー辞書ファイルは、ローカル ファイル システムのこのフォルダーに保存されている場合のみ使用できます。たとえば、SharePoint サイトのみに保存されているユーザー辞書ファイルは使用できません。

各アプリケーション サーバーで SharePoint Server Search 14 サービスを停止して再開する

ファーム内の各アプリケーション サーバーで SharePoint Server Search 14 サービスを再起動する必要があります。

重要

これらのサービスを停止または開始するのに、サーバーの全体管理の [サーバーのサービス] ページを使用しないでください。このページを使用した場合は、サービスが削除され、インデックスおよび関連する構成が消去されます。代わりに、次の手順を使用します。

各アプリケーション サーバーで SharePoint Server Search 14 サービスを停止して再開するには

  1. この手順を実行するユーザー アカウントがローカル コンピューターの Administrators グループに属するメンバーであることを確認します。

  2. [スタート] メニューで、[すべてのプログラム] をポイントします。次に、[管理ツール] をポイントし、[サービス] をクリックします。

  3. [SharePoint Server Search 14] サービスを右クリックし、[プロパティ] をクリックします。[プロパティ] ダイアログ ボックスが表示されます。

  4. [停止] をクリックします。サービスが停止したら、[開始] をクリックします。

  5. [スタートアップの種類] が [無効] に設定されていないことを確認します。

  6. ファーム内のアプリケーション サーバー (クロール サーバーおよびクエリ サーバー) ごとにこの手順を繰り返します。

フル クロールを実行する

コンテンツ インデックスにユーザー辞書を適用するには、ユーザー辞書に追加したトークンを含むコンテンツに対して、フル クロールを実行する必要があります。フル クロールの実行の詳細については、「クロールを管理する (SharePoint Server 2010)」を参照してください。

サポートされている言語

次の表に、SharePoint Server 2010 でユーザー辞書がサポートされる言語および地域を示します。言語に依存しないワード ブレーカー用のユーザー辞書は作成できません。この表には、サポートされている各言語および地域の言語コード ID (LCID) および 16 進コードも示します。16 進コードの上 2 桁の数字は地域を表し、下 2 桁の数字は言語を表します。地域別のワード ブレーカーが個別に存在しない言語の場合、16 進コードの上 2 桁は常にゼロになります。

表 2 - サポートされている言語

言語/地域 LCID 言語の 16 進コード

アラビア語

1025

0001

ベンガル語

1093

0045

ブルガリア語

1026

0002

カタルニア語

1027

0003

クロアチア語

1050

001a

デンマーク語

1030

0006

ドイツ語

1043

0013

英語

1033

0009

フランス語

1036

000c

ドイツ語

1031

0007

グジャラート語

1095

0047

ヘブライ語

1037

000d

ヒンディー語

1081

0039

アイスランド語

1039

000f

インドネシア語

1057

0021

イタリア語

1040

0010

日本語

1041

0011

カンナダ語

1099

004b

ラトビア語

1062

0026

リトアニア語

1063

0027

マレー語

1086

003e

マラヤーラム語

1100

004c

マラーティー語

1102

004e

ノルウェー語 (ボークモール)

1044

0414

ポルトガル語

2070

0816

ポルトガル語 (ブラジル)

1046

0416

パンジャブ語

1094

0046

ルーマニア語

1048

0018

ロシア語

1049

0019

セルビア語 (キリル)

3098

0c1a

セルビア語 (ラテン)

2074

081a

スロバキア語

1051

001b

スロベニア語

1060

0024

スペイン語

3082

000a

スウェーデン語

1053

001d

タミール語

1097

0049

テルグ語

1098

004a

ウクライナ語

1058

0022

ウルドゥー語

1056

0020

ベトナム語

1066

002a

See Also

Concepts

シソーラス ファイルを管理する (SharePoint Server 2010)