elascsearch 映射⽀持的常规字段类型使⽤

需要注意的是,⼀旦字段定义完成,将不能被修改。

PUT lglbc_demo_mapping
{
 "settings": {
 "number_of_replicas": 1,
 "number_of_shards": 3
 },
 "mappings": {
 "properties": {
 "default":{
 "type": "text"
 }
 }
 }
}

常规字段类型

Text类型

⽤于存储⻓⽂本数据。⽂本字段被分析为词项(terms),以⽀持全⽂搜索。您可以指定不同的分析器来处理不同语⾔或⽂本内容

"text_field": {
 "type": "text",
 "analyzer": "standard"
}
Keyword类型

⽤于存储短⽂本数据,如标签、关键字等。关键字字段不进⾏分词,整个字段内容作为⼀个关键词被索引。它通常⽤于精确匹配和聚合操作。

"keyword_field": {
 "type": "keyword"
}
Numeric类型

⽤于存储数值类型的数据,包括整数和浮点数。

"numeric_field": {
 "type": "integer"
}
Date类型

⽤于存储⽇期和时间数据。⽇期字段会被解析为特定的⽇期格式以⽀持⽇期范围查询和排序。如果你传的是⽇期格式,会默认当成UTC时间。

"date_field": {
 "type": "date",
 "format": "yyyy-MM-dd || epoch_millis"
}
Boolean类型

⽤于存储布尔值(true或false)

"boolean_field": {
 "type": "boolean"
}
Binary类型

⽤于存储⼆进制数据,例如图像或⽂件。⼀般不会去⽤

"binary_field": {
 "type": "binary"
}
Geo类型

⽤于存储地理位置数据,⽀持点、线和多边形等。

"location_field": {
"type": "geo_point"
}
Object类型

⽤于存储嵌套的JSON对象。您可以在对象内部定义⼦字段及其数据类型。

"object_field": {
	 "type": "object",
	 "properties": {
		 "subfield1": { "type": "text" },
		 "subfield2": { "type": "integer" }
	 }
}
nested类型

⽤于存储嵌套的JSON对象。您可以在对象内部定义⼦字段及其数据类型。和Object的区别在于嵌套的对象独⽴存在,利于搜索

"nested_field": {
	 "type": "nested",
	 "properties": {
		 "subfield1": { "type": "text" },
		 "subfield2": { "type": "integer" }
	 }
}
数组类型

数组类型⽆需再mapping中使⽤额外的字段进⾏定义。

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值