Elasticsearch 动态映射——自动检测
ES中有一个非常重要的特性——动态映射,即索引文档前不需要创建索引、类型等信息,在索引的同时会自动完成索引、类型、映射的创建。
那么什么是映射呢?映射就是描述字段的类型、如何进行分析、如何进行索引等内容。
本篇就着重讲述下,ES中映射的自动检测特性。
更多内容参考:Elastisearch知识总结
字段自动检测
在某个字段第一次出现时,如果之前没有定义过映射,ES会自动检测它可能满足的类型,然后创建对应的映射。
|
JSON数据 |
ES中的数据类型 |
|
|
不会添加字段 |
|
|
boolean |
|
floating point number |
double |
|
integer |
long |
|
object |
object |
|
array |
依赖于第一个非null得值 |
|
string |
如果通过了date检测,则为date 如果通过了numeric检测,则为Number |
上面就是类型自动检测的结果,除了上面列出的基本类型,其他的高级的类型比如geo,ip就需要手动指定了。
日期自动检测
日期自动检测,即date_detection是默认开启的,因此只要符合默认的日期格式,就可以自动创建成date类型
日期的格式为:
[ "strict_date_optional_time","yyyy/MM/dd HH:mm:ss Z||yyyy/MM/dd Z"]
例如:
$ curl -XPUT localhost:/test/test/ -d '{"create":"2015/11/11"}'
{"_index":"test","_type":"test","_id":"","_version":,"created":true}
$ curl -XGET localhost:/test/_mapping?pretty
{
"test" : {
"mappings" : {
"test" : {
"properties" : {
"create" : {
"type" : "date",
"format" : "yyyy/MM/dd HH:mm:ss||yyyy/MM/dd"
}
}
}
}
}
}
可以通过修改dynamic_date_formats 修改日期格式:
PUT my_index
{
"mappings":{
“my_type":{"dynamic_date_formats":["MM/dd/yyyy"]}
}
} PUT my_index/my_type/{"create_date":"09/25/2015"}
数字自动检测
数字自动检测,即numeric_detection默认是关闭的。因此需要手动打开:
PUT my_index
{"mappings":{"my_type":{"numeric_detection":true}}}
当执行索引操作时,如果符合float型,就会自动创建为float

long型也是一样:

Elasticsearch 动态映射——自动检测的更多相关文章
- elasticsearch 动态映射
https://www.elastic.co/guide/cn/elasticsearch/guide/current/dynamic-mapping.html#dynamic-mapping当 El ...
- ES 12 - 配置使用Elasticsearch的动态映射 (dynamic mapping)
目录 1 动态映射(dynamic mapping) 1.1 什么是动态映射 1.2 体验动态映射 1.3 搜索结果不一致的原因分析 2 开启dynamic mapping策略 2.1 约束策略 2. ...
- elasticsearch自定义动态映射
https://www.elastic.co/guide/cn/elasticsearch/guide/current/custom-dynamic-mapping.html如果你想在运行时增加新的字 ...
- elasticsearch 动态模板设置
自定义动态映射 如果你想在运行时增加新的字段,你可能会启用动态映射.然而,有时候,动态映射 规则 可能不太智能.幸运的是,我们可以通过设置去自定义这些规则,以便更好的适用于你的数据. 日期检测 当 E ...
- Elasticsearch入门教程(三):Elasticsearch索引&映射
原文:Elasticsearch入门教程(三):Elasticsearch索引&映射 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文 ...
- 使用Logstash创建ES映射模版并进行数据默认的动态映射规则
本文配置为 ELK 即(Elasticsearch.Logstash.Kibana)5.5.1. Elasticsearch 能够自动检测字段的类型并进行映射,例如引号内的字段映射为 String,不 ...
- 聊聊elasticsearch7.8的模板和动态映射
最近想写一篇es的索引的一个设计,由于设计的东西特别多,当然,elasticsearch的模板和动态映射也是其中的一个设计点,所以干脆先来聊聊索引的模板和动态映射,模板,听这个名字就相当于一些公共可用 ...
- ElasticSearch7.3 学习之定制动态映射(dynamic mapping)
1.dynamic mapping ElasticSearch中有一个非常重要的特性--动态映射,即索引文档前不需要创建索引.类型等信息,在索引的同时会自动完成索引.类型.映射的创建. 当ES在文档中 ...
- elasticsearch的映射(mapping)和分析(analysis)
转发自:http://blog.csdn.net/hzrandd/article/details/47128895 分析和分析器 分析(analysis)是这样一个过程: 首先,表征化一个文本块为适用 ...
随机推荐
- Sphinx : 高性能SQL全文检索引擎
Sphinx的特点 快速创建索引:3分钟左右即可创建近100万条记录的索引,并且采用了增量索引的方式,重建索引非常迅速. 闪电般的检索速度:尽管是1千万条的大数据量,查询数据的速度也在毫秒级以上,2- ...
- 软将工程课设day1与day2
在稍迟的时候,收集了三份用户体验,自己编辑整理之后上交于组. 和老师确定了一下每日的工作流程与需要提交的任务. 与组讨论了软件优化方向,包括整理收集到的“反馈信息”.“额外需求信息”.“体验信息”.
- Arcgis –>ArcToolBox 有些工具不能用,没有许可
问题描述 错误信息: You do not have the necessary license to execute the selected tool 我3D Analyst是有许可的. ...
- 图解集合4:HashMap
初识HashMap 之前的List,讲了ArrayList.LinkedList,最后讲到了CopyOnWriteArrayList,就前两者而言,反映的是两种思想: (1)ArrayList以数组形 ...
- 新版markdown功能发布!支持github flavored markdown!
让大家久等了!新版markdown功能一直拖到今天才发布,很是愧疚...但不管怎么样,总算发布了! 今年1月份发布第一版markdown功能之后,很多园友反馈说做得很烂,我们综合大家的反馈之后发现不仅 ...
- [51单片机] 以从0开始做4位8段共阴数码管3461AS驱动谈细节决定高质量DIY
目录 1)问题产生 2)失败尝试 3)最终方案 4)使用方法 5)知识共享 1)问题产生 在上一篇“以PWM控制直流电机为例建一个简单的51工程框架”中已向大家介绍了一个封装好的8位8段数码管的驱动( ...
- CSDN CODE平台,中国版Github简要使用说明!(多图慎入)
楼主说 以前一直看到别人在用github发布自己的代码,各种牛逼,各种羡慕嫉妒恨.最后终于受不了了,也去注册了一个,注册到没什么难度.然后就没有然后了... 完全看不懂,不知道怎么用. 一次偶然的机会 ...
- iOS xcode6 设置多语言
1,首先新建一个文件,选中ios模块下Rescource的Strings File 类型.eg:文件 2,选中该文件,右边栏选该文件属性,选中Localizable模块,选中localiz,这时会弹出 ...
- WindowManager 实现悬浮窗 详解
WindowManager 实现悬浮窗 详解 一:对于想直接看效果的,可以看看我的demo app. 链接:http://sj.qq.com/myapp/detail.htm?apkName=com. ...
- Atitit 发帖机实现(2)---usrQBN2243 文本解析到对象协议规范
Atitit 发帖机实现(2)---usrQBN2243 文本解析到对象协议规范 文本内容 ###注释 标题:标题标题标题标题标题1 人数:5 月薪:2000-3000 内容: 内容内容内 容内容内容 ...