elasticsearch 动态映射

一般情况下我感觉很少用单纯的动态映射,除非业务简单。一般也是用动态映射模板和静态映射。
默认情况下动态映射是打开的,可以通过设置索引参数为false(忽略新field)或者strict(遇到未知field抛出异常~嗯-官方是这么写的)
通过_settings去获取默认的配置
GET /index(可缺省)/_settings(缺省的话默认是全部的index)

{
  "xx-2018.06.23": {
    "settings": {
      "index": {
        "creation_date": "1531274469467",
        "number_of_shards": "5",
        "number_of_replicas": "1",
        "uuid": "TrIbNCbPSe2Jq86FN0QScw",
        "version": {
          "created": "6030099"
        },
        "provided_name": "xx-2018.06.23"
      }
    }
  }

好吧,好像看起来没啥东西~~!
有些书上写的_default_,已经在6.0.x上删除~没有意义

如果启用了date_detection(默认),那么将检查新的字符串字段,看看它们的内容是否与dynamic_date_format中指定的任何日期模式匹配。如果找到匹配项,则添加一个具有相应格式的新日期字段默认格式是这样的
当然是6.3版本的~
[ "strict_date_optional_time","yyyy/MM/dd HH:mm:ss Z||yyyy/MM/dd Z"]
贴出官方示例

PUT my_index/_doc/1
{
  "create_date": "2015/09/02"
}

GET my_index/_mapping
结果
{
  "my_index": {
    "mappings": {
      "_doc": {
        "properties": {
          "create_date": {
            "type": "date",
            "format": "yyyy/MM/dd HH:mm:ss||yyyy/MM/dd||epoch_millis"
          }
        }
      }
    }
  }
}

禁用日期检查

PUT my_index
{
  "mappings": {
    "_doc": {
      "date_detection": false
    }
  }
}


PUT my_index/_doc/1 
{
  "create": "2015/09/02"
}


GET my_index/_mapping
结果
{
  "my_index": {
    "mappings": {
      "_doc": {
        "date_detection": false,
        "properties": {
          "create": {
            "type": "text",
            "fields": {
              "keyword": {
                "type": "keyword",
                "ignore_above": 256
              }
            }
          }
        }
      }
    }
  }
}

已经变成了text格式了

修改动态映射日期的格式

PUT my_index
{
  "mappings": {
    "_doc": {
      "dynamic_date_formats": ["yyyy-MM-dd HH:mm:ss"]
    }
  }
}


PUT my_index/_doc/1 
{
  "create": "2018-07-16 12:11:00"
}


GET my_index/_mapping

对于数字的动态映射检查是关闭的(OK ,附上官方示例)

PUT my_index
{
  "mappings": {
    "_doc": {
      "numeric_detection": true
    }
  }
}

PUT my_index/_doc/1
{
  "my_float":   "1.0", 
  "my_integer": "1" 
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,790评论 19 139
  • 第一天 7月13日OCP笔记: Oracle Ocp11g准备资料: OracleFundmentals 书 管理...
    fjxCode阅读 2,900评论 0 4
  • 进公司的第一天老板开会的时候就说工厂做贸易最忌讳的一点就是永远只给客户销售一种产品。 当时不以为然,大部分工厂只做...
    江小影子阅读 3,910评论 0 2
  • 宴罢别哥热泪纷, 艰难困苦见尊身。 天花作骨丝难绣, 春水如情剪不分。
    刘豫州阅读 657评论 0 12
  • 初中终于毕业了,经历了汗水与付出的三年学习生涯,我从小学那个英语只识ABCD,数学只会加减乘除,语文原文默写能自己...
    王子森阅读 252评论 3 2

友情链接更多精彩内容