この Topic では、データテーブルのフィールドデータ型と、検索インデックスの対応する型とのマッピングについて説明します。また、さまざまなフィールドデータ型がサポートする追加のプロパティとクエリ機能についても説明します。
データ型のマッピング
検索インデックスのフィールドの値は、データテーブルの対応するフィールドの値から派生します。これらのフィールドのデータ型は一致する必要があります。次の表に、検索インデックスとデータテーブルのフィールドデータ型のマッピングを示します。
表内のデータ型は、1 対 1 でマッピングする必要があります。Geo-point 型と Nested 型も特定のフォーマットを必要とします。これらの要件が満たされない場合、データはダーティデータとして破棄されます。これにより、テーブルには存在するが検索インデックスでは見つからないデータが発生する可能性があります。
検索インデックスのフィールドデータ型 | データテーブルのフィールドデータ型 | 説明 |
Long | Integer | 64 ビット long 整数。 |
Double | Double | 64 ビット倍精度浮動小数点数。 |
Boolean | Boolean | ブール値。 |
Keyword | String | トークン化できない文字列です。 |
FuzzyKeyword | String | 高性能のあいまい検索をサポートする文字列です。 |
Text | String | |
Date | Integer, String | Date データ型は、日付データのさまざまなカスタムフォーマットをサポートします。 |
Geo-point | String | 点の座標情報です。フォーマットは |
Vector | String | ベクター型です。値は Float32 配列のフォーマットの文字列です。配列の長さはフィールドのディメンションと等しくなります。たとえば、ベクター文字列 |
String | ネスト型です。例: |
フィールド属性のサポート
検索インデックスフィールドは、配列、仮想カラム、ハイライトなどの追加プロパティをサポートします。サポートされるプロパティはデータ型によって異なります。次の表に、適用可能なデータ型と各追加プロパティの説明を示します。
プロパティ | 適用可能なデータ型 | 説明 |
Array | Long, Double, Boolean, Keyword, FuzzyKeyword, Text, Date, Geo-point | 同じ型のデータ系列を格納するには、フィールドを配列型に設定します。 データを書き込むときは、 Nested 型と Vector 型は本質的に配列であるため、このプロパティを設定する必要はありません。 |
Virtual column | Long, Double, Keyword, FuzzyKeyword, Text, Date, Geo-point, Vector | Tablestore のストレージ構造とデータを変更せずに、新しい型の新しいフィールドをクエリする場合は、フィールドを仮想カラムとして設定します。 |
Date format | Date | Date 型を使用する場合は、日付フォーマットを指定する必要があります。 |
Tokenization | Text | 全文検索を実装するには、フィールドにトークン化を設定します。 |
Summary and highlighting | Text | 全文検索でヒットした検索クエリをハイライトするには、フィールドのサマリーとハイライト機能を有効にします。 |
Vector configuration | Vector | Vector フィールドを使用する場合は、ベクターのメジャーアルゴリズムとディメンションを指定する必要があります。 |
クエリ機能のサポート
次の表に、各データ型で使用できるクエリ機能を示します。
「✓」は機能がサポートされていることを示します。「×」は機能がサポートされていないことを示します。
完全一致検索機能では、フィールドを設定する必要はありません。
クエリ機能 | Long | Double | Boolean | Keyword | FuzzyKeyword | Text | Date | Geo-point | Nested | Vector |
✓ | ✓ | ✓ | ✓ | × | × | ✓ | × | × | × | |
✓ | ✓ | ✓ | ✓ | × | × | ✓ | × | × | × | |
✓ | ✓ | ✓ | ✓ | × | × | ✓ | × | × | × | |
✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
× | × | × | ✓ | ✓ | × | × | × | × | × | |
× | × | × | ✓ | ✓ | × | × | × | × | × | |
× | × | × | × | ✓ | × | × | × | × | × | |
× | × | × | × | × | ✓ | × | × | × | × | |
× | × | × | × | × | × | × | ✓ | × | × | |
× | × | × | × | × | × | × | × | ✓ | × | |
✓ | ✓ | × | ✓ | × | × | × | × | × | × | |
✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
✓ | ✓ | ✓ | ✓ | × | ✓ | × | × | × | × | |
✓ | ✓ | ✓ | ✓ | × | ✓ | × | × | × | × | |
× | × | × | × | × | × | × | × | × | ✓ |