前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >ElasticSearch映射

ElasticSearch映射

作者头像
leehao
发布2025-02-11 13:24:12
发布2025-02-11 13:24:12
7900
代码可运行
举报
文章被收录于专栏:leehaoleehao
运行总次数:0
代码可运行

ES有个强大的功能,在索引的同时自动完成索引、类型、映射的创建。

什么是映射呢?映射就是描述字段的类型、如何进行分析、如何进行索引等内容。

字段自动检测

字段如果在定义是没有映射,ES会自动检测他可能对应的字段类型,创建相应的映射。

JSON数据

ES中数据类型

null

null

true、false

boolean

浮点数

double

整数

long

object

object

数组

取决于第一个非空的值

字符串

如果可以转换为date,则为date 可以转化为数字,则为number

以上是自动检测的基本结果,其他高级的类型如ip、geo手动指定。

日期自动检测

日期自动检测,即date_detection是默认开启的,因此只要符合默认的日期格式,就可以自动创建成date类型

日期的格式为:

[ "strict_date_optional_time","yyyy/MM/dd HH:mm:ss Z||yyyy/MM/dd Z"]

如:

原始数据格式为:

_index

_type

_id

▼ _score

title

text

date

website

blog

123

1

My first blog entry

Just trying this out...

2014/01/01

通过 http://localhost:9200/website/_mapping?pretty/  查看:

代码语言:txt
复制
 {
"website": {     
"mappings": {       
"blog": {         
"properties": {           
"date": {             
"type": "date",
"format": "yyyy/MM/dd HH:mm:ss||yyyy/MM/dd||epoch_millis"
 },
"text": {             
"type": "string"
 },
"title": {             
"type": "string"
 }
 }
 }
 }
 }
 } 
 

数字自动检测

数字自动检测,即numeric_detection默认是关闭的。因此需要手动打开:

代码语言:javascript
代码运行次数:0
复制
PUT my_index
{"mappings":{"my_type":{"numeric_detection":true}}}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-09-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 字段自动检测
  • 日期自动检测
  • 数字自动检测
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档