Spec-Zone.ru › Elasticsearch 8
›Руководство по Elasticsearch [8.17] ›Конвейеры обогащения ›Обогащение данных

Настройка процессора обогащения

Чтобы настроить процессор обогащения, выполните следующие действия:

  1. Проверьте предварительные условия.
  2. Добавьте обогащающие данные.
  3. Создайте политику обогащения.
  4. Исполните политику обогащения.
  5. Добавьте процессор обогащения в конвейер обогащения.
  6. Обработайте и обогатите документы.

После настройки процессора обогащения вы можете обновить данные обогащения и обновить политики обогащения.

Процессор обогащения выполняет несколько операций и может повлиять на скорость вашего конвейера обогащения.

Мы настоятельно рекомендуем протестировать и оценить производительность ваших процессоров обогащения перед их развертыванием в рабочей среде.

Мы не рекомендуем использовать процессор обогащения для добавления данных в режиме реального времени. Процессор обогащения лучше всего работает с справочными данными, которые не меняются часто.

Предварительные условия

Для использования политик обогащения у вас должны быть:

  • read права индексирования для всех используемых индексов
  • enrich_user встроенная роль

Добавление обогащающих данных

Для начала добавьте документы в один или несколько исходных индексов. Эти документы должны содержать данные обогащения, которые вы в конечном итоге хотите добавить в новые данные.

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

Вы также можете настроить Beats, такие как Filebeat, для автоматической отправки и индексирования документов в ваши исходные индексы. См. Начало работы с Beats.

Создание политики обогащения

После добавления обогащающих данных в исходные индексы используйте API создания политики обогащения или Управление политиками обогащения в Kibana для создания политики обогащения.

После создания политику обогащения нельзя обновить или изменить. См. Обновление политики обогащения.

Исполнение политики обогащения

После создания политики обогащения, вам необходимо выполнить ее с помощью API выполнения политики обогащения или Управление политиками обогащения в Kibana для создания индекса обогащения.

enrich policy index

Индекс обогащения содержит документы из исходных индексов политики. Индексы обогащения всегда начинаются с .enrich-*, являются только для чтения и сливаются с применением force merge.

Индексы обогащения должны использоваться только процессором обогащения или командой ES|QL ES|QL ENRICH. Избегайте использования индексов обогащения для других целей.

Добавление процессора обогащения в конвейер обогащения

После того, как у вас есть исходные индексы, политика обогащения и соответствующий индекс обогащения, вы можете настроить конвейер обогащения, который включает процессор обогащения для вашей политики.

enrich processor

Определите процессор обогащения и добавьте его в конвейер обогащения с помощью API создания или обновления конвейера.

При определении процессора обогащения вы должны включить по меньшей мере следующее:

  • Используемую политику обогащения.
  • Поле, используемое для сопоставления входящих документов с документами в индексе обогащения.
  • Целевое поле для добавления входящих документов. Это целевое поле содержит поля соответствия и обогащения, указанные в вашей политике обогащения.

Вы также можете использовать опцию max_matches для установки количества документов обогащения, которые может соответствовать входящий документ. Если установлено значение по умолчанию 1, данные добавляются в целевое поле входящего документа как JSON-объект. В противном случае данные добавляются как массив.

См. Обогащение для получения полного списка параметров конфигурации.

Вы также можете добавить другие процессоры в свой конвейер обогащения.

Обработка и обогащение документов

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

enrich process

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

Обновление индекса обогащения

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

При необходимости вы можете переиндексировать или обновить любые уже обработанные документы с помощью вашего конвейера обогащения.

Обновление политики обогащения

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

  1. Создать и выполнить новую политику обогащения.
  2. Заменить предыдущую политику обогащения новой политикой в используемых процессорах обогащения или запросах ES|QL.
  3. Использовать API удаления политики обогащения или Управление политиками обогащения в Kibana для удаления предыдущей политики обогащения.

Компоненты обогащения

Координатор обогащения — это компонент, который управляет и выполняет необходимые поиски для обогащения документов на каждом узле конвейера обогащения. Он объединяет результаты поиска всех процессоров обогащения во всех конвейерах в массовые многократные запросы.

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

Настройки узла

Процессор enrich имеет настройки узла для координатора обогащения и исполнителя политики обогащения.

Координатор обогащения поддерживает следующие настройки узла:

enrich.cache_size
Максимальный размер кэша, кэширующего запросы для обогащения документов. Размер может быть указан в трех единицах: в виде количества кэшированных запросов (например, 1000), абсолютный размер в байтах (например, 100Mb) или процент от максимального объёма памяти узла (например, 1%). В обоих случаях, для абсолютного размера в байтах и процента от объёма памяти, Elasticsearch не гарантирует, что размер кэша обогащения будет точно соответствовать максимуму, так как Elasticsearch использует размер в байтах сериализованного ответа запроса, который является хорошим представлением используемого пространства в куче, но не является точным соответствием. По умолчанию 1%. Существует один кэш для всех процессоров обогащения в кластере.
enrich.coordinator_proxy.max_concurrent_requests
Максимальное количество одновременных множественных запросов для выполнения при обогащении документов. По умолчанию 8.
enrich.coordinator_proxy.max_lookups_per_request
Максимальное количество запросов, включаемых в запрос множественных запросов при обогащении документов. По умолчанию 128.

Исполнитель политики обогащения поддерживает следующие настройки узла:

enrich.fetch_size
Максимальный размер пакета при повторном индексировании исходного индекса в индекс обогащения. По умолчанию 10000.
enrich.max_force_merge_attempts
Максимальное количество попыток принудительного слияния, разрешенных для индекса обогащения. По умолчанию 3.
enrich.cleanup_period
С какой частотой Elasticsearch проверяет, можно ли удалить неиспользуемые индексы обогащения. По умолчанию 15m.
enrich.max_concurrent_policy_executions
Максимальное количество политик обогащения, выполняемых одновременно. По умолчанию 50.

© 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/8.17/enrich-setup.html

Spec-Zone.ru

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