zoukankan      html  css  js  c++  java
  • ES基础(十)Dynamic Mapping 和常见字段类型

    Mapping中的字段一旦设定后,禁止直接修改。因为倒排索引生成后不允许直接修改。需要重新建立新的索引,做reindex操作。

    类似数据库中的表结构定义,主要作用

    • 定义所以下的字段名字
    • 定义字段的类型
    • 定义倒排索引相关的配置(是否被索引?采用的Analyzer)

    对新增字段的处理 true false strict

    在object下,支持做dynamic的属性的定义

     

     

     

     

    #写入文档,查看 Mapping
    PUT mapping_test/_doc/1
    {
      "firstName":"Chan",
      "lastName": "Jackie",
      "loginDate":"2018-07-24T10:29:48.103Z"
    }
    
    #查看 Mapping文件
    GET mapping_test/_mapping
    
    
    #Delete index
    DELETE mapping_test
    
    #dynamic mapping,推断字段的类型
    PUT mapping_test/_doc/1
    {
        "uid" : "123",
        "isVip" : false,
        "isAdmin": "true",
        "age":19,
        "heigh":180
    }
    
    #查看 Dynamic
    GET mapping_test/_mapping
    
    
    #默认Mapping支持dynamic,写入的文档中加入新的字段
    PUT dynamic_mapping_test/_doc/1
    {
      "newField":"someValue"
    }
    
    #该字段可以被搜索,数据也在_source中出现
    POST dynamic_mapping_test/_search
    {
      "query":{
        "match":{
          "newField":"someValue"
        }
      }
    }
    
    
    #修改为dynamic false
    PUT dynamic_mapping_test/_mapping
    {
      "dynamic": false
    }
    
    #新增 anotherField
    PUT dynamic_mapping_test/_doc/10
    {
      "anotherField":"someValue"
    }
    
    
    #该字段不可以被搜索,因为dynamic已经被设置为false
    POST dynamic_mapping_test/_search
    {
      "query":{
        "match":{
          "anotherField":"someValue"
        }
      }
    }
    
    get dynamic_mapping_test/_doc/10
    
    #修改为strict
    PUT dynamic_mapping_test/_mapping
    {
      "dynamic": "strict"
    }
    
    
    
    #写入数据出错,HTTP Code 400
    PUT dynamic_mapping_test/_doc/12
    {
      "lastField":"value"
    }
    
    DELETE dynamic_mapping_test

     

     

    本文来自博客园,作者:秋华,转载请注明原文链接:https://www.cnblogs.com/qiu-hua/p/14195076.html

  • 相关阅读:
    面向对象---类与类之间的关系
    面向对象二 成员
    面向对象一
    内置函数二---作业
    内置函数⼆
    学习python的第十三天-----函数作业
    学习python的第十二天
    学习python的第十二天---函数的进阶
    学习python的第是一天————函数进阶的作业
    学习python的第十天------函数的进阶
  • 原文地址:https://www.cnblogs.com/qiu-hua/p/14195076.html
Copyright © 2011-2022 走看看