FieldSchema数据类型定义,表示多元索引所有字段的配置信息。
数据结构
message FieldSchema {
optional string field_name = 1;
optional FieldType field_type = 2;
optional string analyzer = 4;
optional bool index = 5;
optional bool sort_and_agg = 6;
optional bool store = 7;
repeated FieldSchema field_schemas = 8; // only for nested type
optional bool is_array = 9;
optional bytes analyzer_parameter = 10;
optional bool is_virtual_field = 11;
repeated string source_field_names = 12;
repeated string date_formats = 13;
optional bool enable_highlighting = 14;
optional VectorOptions vector_options = 15;
}
名称 | 类型 | 是否必选 | 描述 |
field_name | string | 是 | 字段名称。 重要 字段名称必须与数据表中的字段名称相同。 |
field_type | 是 | 字段类型。更多信息,请参见基础数据类型及映射。 重要 多元索引的字段类型必须与数据表中字段类型相匹配。 | |
analyzer | string | 否 | 分词器类型。默认值为单字分词。当字段类型为TEXT时可设置此参数。 |
index | bool | 否 | 是否开启索引。默认值为true,表示对该列构建倒排索引或者空间索引;如果设置为false,则不会对该列构建索引。 |
sort_and_agg | bool | 否 | 是否开启排序与统计聚合功能。 只有开启排序与统计聚合功能的字段才能进行排序。 |
store | bool | 否 | 是否在多元索引中附加存储该字段的值。 开启后,可以直接从多元索引中读取该字段的值,而不必反查数据表,可用于查询性能优化。 |
field_schemas | 否 | 字段配置信息。只有字段类型为嵌套类型时,才需要设置此参数。 | |
is_array | bool | 否 | 是否为数组。如果设置为true,则表示该列是一个数组。在数据表中写入数据时,必须按照JSON数组格式写入,例如 当字段类型为嵌套类型时,无需设置此参数。 |
analyzer_parameter | bytes | 否 | 分词的可选参数配置,由protobuf编码。 使用不同分词类型时支持的可选参数配置不同。更多信息,请参见分词。 |
is_virtual_field | bool | 否 | 该字段是否为虚拟列。默认值为false。只有在使用虚拟列时,才需要设置此参数。 |
source_field_names | string | 否 | 数据表中的字段名称。当使用虚拟列且字段的is_virtual_field配置为true时,才需要设置此参数。 |
date_formats | string | 否 | 日期的格式。当字段类型为Date时,才需要设置此参数。 |
enable_highlighting | bool | 否 | 是否开启查询摘要与高亮功能。默认值为false,表示不开启查询摘要与高亮。仅Text类型字段支持查询摘要与高亮功能。 如果要使用查询摘要与高亮,请设置此参数为true。 |
vector_options | 否 | 向量字段类型的属性参数。当字段类型为Vector时,必须设置此参数。 |