Elasticsearch字段类型

        每个字段都有一个字段数据类型或字段类型。此类型指示字段包含的数据类型(如strings或boolean)及其预期用途。例如,可以将strings索引到text和keyword字段。但是,text字段值将被分析以进行全文搜索,而keyword字符串则保留原样以进行过滤和排序。

        字段类型按家庭分组。同一家庭中的类型支持相同的搜索功能,但可能具有不同的空间使用或性能特征。

        目前,唯一的类型家庭是keyword,它由keyword、constant_keyword和通配符(wildcard)字段类型组成。其他类型家庭只有一个字段类型。例如,布尔类型家庭包含一个字段类型:boolean。

普通的类型

binary :编码为Base64字符串的二进制值。

boolean :true 和 false。

Keywords :关键字家庭,包括keyword、constant_keyword和wildcard。

Numbers :数字类型,如long和double,用于表示金额。

Dates :日期类型,包括date和date_nanos。

alias :定义现有字段的别名。

对象和关系类型

object :JSON object。

flattened :将整个JSON对象作为单个字段值。

nested :保留子字段之间关系的JSON对象。

join :为同一索引中的文档定义父/子关系。

结构化数据类型

Range :范围类型,例如long_range、double_range、date_range和ip_range。

ip :IPv4 and IPv6 addresses。

version :软件版本。支持语义版本控制优先规则。

murmur3 :计算并存储散列值。

聚合数据类型

aggregate_metric_double :预先聚合的度量值。

histogram :以直方图形式预先聚集的数值。

文本查询类型

text :经过分析的非结构化文本。

annotated-text :包含特殊标记的文本。用于标识命名实体。

completion :用于自动完成建议。

search_as_you_type :像文本一样键入,以便键入时完成。

token_count :文本中标记的计数。

文档排序类型

dense_vector :记录浮点值的密集向量。

sparse_vector :记录浮点值的稀疏向量。

rank_feature :记录一个数字特征,以提高查询时的命中率。

rank_features :记录数字特征以提高查询时的命中率。

空间数据类型

geo_point :纬度和经度点。

geo_shape :复杂形状,如多边形。

point :任意笛卡尔点。

shape :任意笛卡尔几何。

Arrays

在Elasticsearch中,数组不需要专用的字段数据类型。默认情况下,任何字段都可以包含零个或多个值,但是,数组中的所有值必须是相同的字段类型。

Multi-fields

为不同的目的以不同的方式索引同一字段通常很有用。例如,string字段可以映射为全文搜索的text字段,也可以映射为排序或聚合的keyword字段。或者,我们可以使用标准分析器、英语分析器和法语分析器索引文本字段。

这就是multi-fields的目的。大多数字段类型通过fields参数支持多个字段

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值