インデックススキーマ
インデックススキーマは、インデックスフィールドとプロパティフィールドで構成されます。インデックスフィールドは、検索できるようにテキストをトークン化します。プロパティフィールドは、統計、ソート、フィルタリング、および集計に使用されます。
インデックスフィールドとして使用できる型
INT, INT_ARRAY, TEXT, SHORT_TEXT, LITERAL, LITERAL_ARRAY, TIMESTAMP, GEO_POINT
インデックスフィールドとして使用できない型
FLOAT, FLOAT_ARRAY, DOUBLE, DOUBLE_ARRAY
プロパティフィールドとして使用できる型
INT, INT_ARRAY, LITERAL, LITERAL_ARRAY, FLOAT, FLOAT_ARRAY, DOUBLE, DOUBLE_ARRAY, TIMESTAMP, GEO_POINT
プロパティフィールドとして使用できない型
TEXT, SHORT_TEXT
複合インデックス
複合インデックスは、TEXT や SHORT_TEXT など同じ型の複数のフィールドを 1 つのインデックスにまとめてクエリに使用します。これは、複数のインデックスに対して OR クエリを実行する場合とは挙動が少し異なります。
アプリケーションに 2 つのインデックスと 1 つの複合インデックスがあり、対応するフィールドが次のとおりであるとします。
title_index - title, body_index - body, union_index - title and body
次の内容のドキュメントを考えます。
id:123456,title:Open,body:Searchこれらのインデックスを使用してクエリを実行する場合:
# 2 つのインデックスに対する OR クエリ - 結果は取得されません
query=title_index:'OpenSearch' OR body_index:'OpenSearch'
# 複合インデックス - ドキュメントが取得されます
query=union_index:'OpenSearch' 注:
複合インデックス内のフィールドは、同じ型でなければなりません。SHORT_TEXT と TEXT など、型を混在させることはできません。
組み込みのデフォルトインデックスには、TEXT フィールドのみを含めることができます。
解析方法
テキストアナライザーは、取得のためにテキストをトークン化します。中国語、英語、IT、E コマース、教育など、複数の言語および業界に対応しています。また、数値および固定長文字の完全一致、あいまい一致のほか、位置、時間、数値に対する範囲検索も可能です。
プロパティフィールド
使用方法:プロパティフィールドは、統計、ソート、フィルタリング、および集計のために、filter、aggregate、sort、distinct 句で使用します。例:filter=id>100000。