テーブルの Zing テキストインデックス作成を有効にすると、ユーザーはレコードの文字列値を検索できるようになります。テーブルのテキストインデックス作成属性、ストップワード、および同義語ディクショナリを構成して、検索動作を制御します。
始める前に
必要なロール:ts_admin または admin
このタスクについて
テーブルのテキストインデックス作成を有効にすると、ユーザーはそのテーブルのレコード内の文字列値を検索できるようになります。属性、ストップワード、同義語ディクショナリを構成して、インデックス付きテーブルのインデックス作成と検索動作を制御できます。
デフォルトでは、テキストインデックスレコード () を開きます。例:
テーブルのテキストインデックス作成を有効にすると、すべての子テーブルでも有効になります。子テーブルのテキストインデックス作成を無効にする場合は、「
子テーブルのテキストインデックスの削除」を参照してください。
注: インデックステーブルを作成するたびに、新しいテーブルのアクセス制御ロール (ACL) も作成されます。
テキストインデックス作成はリソースを多用するタスクとなり、完了までに時間がかかる場合があります。インデックス生成時にパフォーマンスが低下したり検索結果が不完全になることがあります。テキストのインデックス作成時間を見積もるために、
過去のテキストインデックス作成統計情報を表示できます。
注: 更新セットの転送によって作成された新しいテーブルは、更新セットに含まれるテーブルに対して有効になっている場合でも、テキストのインデックス作成は無効になります。
ユーザーが更新セットの転送によって作成されたテーブルを検索できるようにするには、それらのテーブルのテキストインデックス作成を手動で有効にする必要があります。
手順
-
移動先 をクリックし、[ 新規] を選択します。
-
[適用先] で、[テーブル] を選択します。
-
[テーブル] で、テキストインデックス作成を構成するテーブルを選択します。
- オプション:
複数テーブル検索でテーブルを使用する場合、またはテーブルで BM25 スコアリングアルゴリズムを使用する場合は、インデックス作成形式を V4 にアップグレードします。
-
[形式] の値がグレイ表示されていない場合は、[v4] を選択し、[送信] を選択して、ステップ 5 に進むことができます。
-
[形式] の値がグレー表示されている場合は、[送信] を選択します。
グレー表示された値は、テーブルが既にインデックス作成されており、そのインデックスを V4 にアップグレードする必要があることを意味します。
-
移動先 をクリックし、送信したテーブルを選択します。
-
[関連リンク] で、[インデックス名レコードを表示] を選択します。
-
[関連リンク]で、[V4 にアップグレード] を選択し、[送信] を選択します。
指定されたテーブルのインデックス作成が V3 から V4 にアップグレードされます。これで、このテーブルを複数テーブルのインデックス作成の一部にすることができ、BM25 を使用してテーブルの関連性スコアをスコアリングできるようになりました。必要に応じて、[関連リンク] の [構成を表示] を選択して、[テキストインデックス構成] ページにテーブルのインデックス作成形式を表示します。
-
選択したテーブルのインデックス作成属性と検索属性を構成します。
-
移動先 をクリックし、構成したテーブルを選択します。
-
テキストインデックステーブルの属性マップ関連リストで、[新規] を選択します。
属性は、Zing がドキュメントのインデックスを作成する方法および検索結果で返されたドキュメントをランク付けする方法に関係します。
-
[テキストインデックステーブルの属性マップ] フォームで、フィールドに入力します。
-
この手順を繰り返して、テーブルの追加属性を定義します。
-
[関連リンク] の下で、[テキストインデックスの生成] を選択します。
-
列レベルの属性を構成します。
-
移動先 をクリックし、テーブルを選択します。
-
[テキストインデックスの列属性マップ] 関連リストで、[新規] を選択します。
-
[テキストインデックスの列属性マップ] フォームで、フィールドに入力します。
-
[送信] を選択します。
-
この手順を繰り返して、インデックスグループ内のテーブル列に追加の検索エンジンパラメーターを定義します。
-
[関連リンク] の下で、[テキストインデックスの生成] を選択します。
- オプション:
ストップワードを追加します。
ストップワードとは、the、a、an など、インデックスを付けたくない単語のことです。一般的なストップワードのグローバルリストがあるため、状況に応じたストップワードを追加するだけで済みます。ストップワードのグローバルリストを表示するには、ブラウザーで次に移動します。https://<instance name>.service-now.com/ts_stop_list.do
-
[インデックスストップワード] タブで、[新規] を選択します。
-
[インデックス] で、ストップワードを追加するインデックスを選択します。
-
[単語] に、インデックスを作成しない 1 つの単語を入力し、[送信] を選択します。
- オプション:
同義語ディクショナリを追加します。
同義語ディクショナリを指定すると、検索用語に加えて、検索用語の同義語も検索対象となります (たとえば car とその同義語である auto)。Zing には、デフォルトの同義語ディクショナリが用意されています。
-
[インデックスの同義語ディクショナリ] タブで、[新規] を選択します。
-
[インデックス] で、ストップワードを追加するインデックスを選択します。
-
[同義語ディクショナリ] で、指定したテーブルで使用する同義語ディクショナリを選択します。
次のタスク
フォームビューでリスト検索を使用して、インデックス付きテーブルのレコードを検索できます。リスト検索の詳細については、「リスト検索の現在のテーブルからのレコードの検索」を参照してください。
123TEXTQUERY321 予約名 で GlideRecord.addQuery(name, value) または GlideRecord.addEncodedQuery(name, value) メソッドを使用して、文字列の一致についてインデックス付きテーブルをクエリすることもできます。文字列一致のクエリの詳細については、「スクリプトでのテーブルのクエリ」を参照してください。
テキストのインデックス作成から除外されるフィールド
テキストのインデックス作成では、特定の名前、タイプ、属性、または暗号化条件を満たすフィールドが除外されます。ユーザー検索は、除外されたフィールドの値と一致しないか、その値を返しません。
テキストインデックス作成では、次の表のいずれかの条件を満たす場合にフィールドが除外されます。
| カテゴリ |
説明 |
| フィールド名 |
テキストのインデックス作成には sys_class_name フィールドと sys_tags フィールドが含まれますが、名前が sys_ で始まる他のすべてのフィールドは除外されます。 |
| フィールドタイプ |
テキストのインデックス作成では、次のタイプのフィールドは除外されます。
- 日付
- 日付/時刻
- 期間
- True/False
- Workflow
これらのタイプの詳細については、「フィールドタイプの参照」を参照してください。 |
| フィールド属性 |
テキストのインデックス作成では、 no_text_index 属性が true に設定されているフィールドが除外されます。 この属性の詳細については、「特定のフィールドのインデックスの削除」を参照してください。 |
| フィールド暗号化 |
テキストのインデックス作成では、エッジ暗号化 向けに構成されたフィールドは除外されます。 エッジ暗号化 でフィールドを構成する方法の詳細については、「暗号化構成を使用してフィールドを暗号化する」を参照してください。 |