Spec-Zone.ru › Elasticsearch 7
›Elasticsearch Guide [7.17] ›Картирование

Явное (явное) описание структуры данных

Вы знаете больше о своих данных, чем Elasticsearch может предположить, поэтому, хотя динамическое описание структуры данных может быть полезно для начала, в какой-то момент вам захочется указать свои явные описания.

Вы можете создавать описания полей, когда вы создаете индекс и добавляете поля в существующий индекс.

Создать индекс с явным описанием структуры данных

Вы можете использовать API создания индекса для создания нового индекса с явным описанием структуры данных.

PUT /my-index-000001
{
  "mappings": {
    "properties": {
      "age":    { "type": "integer" },  
      "email":  { "type": "keyword"  }, 
      "name":   { "type": "text"  }     
    }
  }
}

Создаёт age, поле типа integer

Создаёт email, поле типа keyword

Создаёт name, поле типа text

Добавить поле в существующее описание структуры данных

Вы можете использовать API обновления описания структуры данных, чтобы добавить одно или несколько новых полей в существующий индекс.

Следующий пример добавляет employee-id, поле типа keyword с параметром index со значением false. Это означает, что значения для поля employee-id хранятся, но не индексируются и недоступны для поиска.

PUT /my-index-000001/_mapping
{
  "properties": {
    "employee-id": {
      "type": "keyword",
      "index": false
    }
  }
}

Обновить описание структуры данных поля

За исключением поддерживаемых параметров описания структуры данных, вы не можете изменить описание структуры данных или тип поля существующего поля. Изменение существующего поля может привести к недействительности уже проиндексированных данных.

Если вам нужно изменить описание структуры данных поля в базовых индексах потока данных, см. Изменение описания структуры данных и настроек для потока данных.

Если вам нужно изменить описание структуры данных поля в других индексах, создайте новый индекс с правильным описанием структуры данных и переиндексируйте ваши данные в этот индекс.

Переименование поля приведет к недействительности данных, уже проиндексированных под старым именем поля. Вместо этого добавьте поле alias, чтобы создать альтернативное имя поля.

Просмотреть описание структуры данных индекса

Вы можете использовать API получения описания структуры данных для просмотра описания структуры данных существующего индекса.

GET /my-index-000001/_mapping

API возвращает следующий ответ:

{
  "my-index-000001" : {
    "mappings" : {
      "properties" : {
        "age" : {
          "type" : "integer"
        },
        "email" : {
          "type" : "keyword"
        },
        "employee-id" : {
          "type" : "keyword",
          "index" : false
        },
        "name" : {
          "type" : "text"
        }
      }
    }
  }
}

Просмотреть описание структуры данных определённых полей

Если вам нужно просмотреть описание структуры данных только одного или нескольких определённых полей, вы можете использовать API получения описания структуры данных поля.

Это полезно, если вам не нужно полное описание структуры данных индекса или ваш индекс содержит большое количество полей.

Следующий запрос получает описание структуры данных поля employee-id.

GET /my-index-000001/_mapping/field/employee-id

API возвращает следующий ответ:

{
  "my-index-000001" : {
    "mappings" : {
      "employee-id" : {
        "full_name" : "employee-id",
        "mapping" : {
          "employee-id" : {
            "type" : "keyword",
            "index" : false
          }
        }
      }
    }
  }
}

© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/explicit-mapping.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API