_field_names поле
Поле _field_names используется для индексации имён всех полей в документе, содержащих значения, отличные от null. Это поле использовалось запросом exists для поиска документов, которые либо имеют, либо не имеют каких-либо значений, отличных от null, для конкретного поля.
Теперь поле _field_names индексирует только имена полей, для которых doc_values и norms отключены. Для полей, для которых включены либо doc_values, либо norm, запрос exists по-прежнему будет доступен, но не будет использовать поле _field_names.
Отключение _field_names
Отключение _field_names устарело и будет удалено в будущей основной версии.
Отключение _field_names обычно не требуется, поскольку оно больше не несёт той нагрузки на индекс, что было раньше. Если у вас много полей, для которых doc_values и norms отключены, и вам не нужно выполнять запросы exists, используя эти поля, вы можете отключить _field_names, добавив следующее в схемы:
PUT tweets
{
"mappings": {
"_field_names": {
"enabled": 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/mapping-field-names-field.html