| 用語 | 説明 |
|---|
| instance | 検索サービスの最上位コンテナです。インスタンスには、データソーススキーマ、インデックススキーマ、データ属性など、すべてのデータ構成が含まれており、単一の検索サービスエンドポイントとして機能します。インスタンスは、リレーショナルデータベースシステムにおけるデータベースに相当します。 |
| document | 検索可能なデータの基本単位で、リレーショナルデータベーステーブルの行に相当します。ドキュメントは 1 つ以上のフィールドを含み、プライマリキーを持つ必要があります。OpenSearch はプライマリキーを使用して各ドキュメントを一意に識別します。既存のドキュメントと同じプライマリキーを持つ新しいドキュメントをプッシュすると、既存のドキュメントは上書きされます。 |
| field | ドキュメント内の単一の名前–値ペアです。フィールドはドキュメントの構成要素であり、どのようなデータを格納し、どのように検索またはフィルターできるかを決定します。 |
| plugins | OpenSearch が提供する組み込みのデータ処理プラグインで、データインポート時にデータを変換するために使用します。スキーマ定義時またはデータソース設定時にプラグインを選択します。 |
| source data | 処理前の OpenSearch にプッシュされる生データです。ソースデータには、1 つ以上のソースフィールドが含まれます。 |
| source field | ソースデータの最小単位である単一の名前–値ペアです。サポートされているデータの型については、「アプリケーションスキーマとインデックススキーマ」をご参照ください。 |
| index | データ取得を高速化するためのデータ構造です。1 つのインスタンスには複数のインデックスを設定できます。OpenSearch は内部で転置インデックスとフォワードインデックスの 2 種類のインデックスを使用します。 |
| composite index | TEXT 型または SHORT_TEXT 型の複数のフィールドにまたがって構築されるインデックスです。たとえば、フォーラム検索サービスでは、タイトルのみを対象とする検索用に title_search インデックスを使用し、タイトルと本文の両方を対象とする包括的な検索用にデフォルトの複合インデックスを使用できます。 |
| index field | クエリ句 に参加するように定義されたフィールドです。パフォーマンス専有型の全文取得を行うには、インデックスフィールドの定義が必要です。 |
| attribute field | FILTER、SORT、AGGREGATE、および DISTINCT 句で使用されるフィールドです。属性フィールドは、全文取得には参加せずに検索結果のフィルタリング、ソート、統計集計を可能にします。 |
| default display field | 検索結果でデフォルトで返されるフィールドのセットです。fetch_fields API パラメーターを使用して、リクエストごとにこのデフォルトを上書きできます。fetch_fields が設定されている場合、デフォルト表示フィールドの構成は無視され、指定されたフィールドのみが返されます。 |
| tokenization | テキストフィールドの値をインデックス用の個別の term に分割するプロセスです。テキストの分割方法はフィールドの型によって異なります。TEXT フィールドは意味のある単語レベルの term に分割され、SHORT_TEXT フィールドは文字単位で分割されます。たとえば、中国語のフレーズ「浙江大学」は TEXT フィールドでは「浙江」と「大学」に分割されますが、SHORT_TEXT フィールドでは「浙」「江」「大」「学」に分割されます。形態素解析を行わないと、完全一致の文字列検索しか機能しないため、全文検索を実現するには形態素解析が不可欠です。 |
| term | 形態素解析によって生成される単一のトークンです。term は転置インデックスの構築に使用されます。 |
| index building | 形態素解析後に term からインデックスを構築するプロセスです。OpenSearch は転置インデックス(取得用)とフォワードインデックス(フィルタリング用)の 2 種類のインデックスを構築します。 |
| inverted index | 各 term をそれを含むドキュメントにマッピングするデータ構造です。転置インデックスは クエリ句 検索を実現します。たとえば、「quick brown fox」と「quick fox jumps」という 2 つのドキュメントがある場合、転置インデックスは次のようにマッピングします:quick → doc1, doc2 / brown → doc1 / fox → doc1, doc2 / jumps → doc2。 |
| forward index | 各ドキュメントをそのフィールド値にマッピングするデータ構造です。フォワードインデックスは FILTER 句 操作を実現します。取得効率は転置インデックスより劣りますが、ドキュメントごとのフィールド値を読み取る操作(例:doc1 → id, type, create_time)には必要不可欠です。 |
| retrieval | 検索リクエストに一致するドキュメントを検出するプロセスです。OpenSearch はクエリのキーワードを term に変換し、転置インデックスを参照して一致するすべてのドキュメントを検索します。 |
| retrieval amount | 取得されるドキュメントの件数です。 |