_meta 字段编辑

映射类型可以拥有与之关联的自定义元数据。这些元数据不会被 Elasticsearch 使用,但可以用来存储特定于应用程序的元数据,例如文档所属的类。

response = client.indices.create(
  index: 'my-index-000001',
  body: {
    mappings: {
      _meta: {
        class: 'MyApp::User',
        version: {
          min: '1.0',
          max: '1.3'
        }
      }
    }
  }
)
puts response
PUT my-index-000001
{
  "mappings": {
    "_meta": { 
      "class": "MyApp::User",
      "version": {
        "min": "1.0",
        "max": "1.3"
      }
    }
  }
}

可以使用 GET 映射 API 获取此 _meta 信息。

可以使用 更新映射 API 更新现有类型上的 _meta 字段。

response = client.indices.put_mapping(
  index: 'my-index-000001',
  body: {
    _meta: {
      class: 'MyApp2::User3',
      version: {
        min: '1.3',
        max: '1.5'
      }
    }
  }
)
puts response
PUT my-index-000001/_mapping
{
  "_meta": {
    "class": "MyApp2::User3",
    "version": {
      "min": "1.3",
      "max": "1.5"
    }
  }
}