Основные операции и их параметры

Перечень параметров операции зависит от ранее выбранного типа операции (поле "Тип" в свойствах).

Задача переиндексации (reindexDataJob)

Операция предназначена для переиндексации записей ядра системы, содержащихся в справочниках, а также для черновиков справочников. Операция запускает процесс индексации Openearch и OrientDB при значимых изменениях в структуре записей с целью ускорения поиска.

  • Имя пользователя – логин учетной записи. Определяет, с правами какой учетной записи будет запускаться операция. Если поле пустое, то при запуске по Cron-выражению у операции будут полные права на любой тип актива/справочник; при запуске через интерфейс у операции будут права текущей учетной записи. Для учетной записи оператора данных может понадобиться настроить права на тип активы/справочники.

  • Очищать индексы – параметр, очищающий индексы Opensearch;

  • Не создавать стандартный отчет – параметр отвечает за создание стандартного отчета в уведомлениях после завершения операции;

  • Обновить маппинги – параметр, обновляющий маппинги в Opensearch;

  • Проиндексировать объекты модели – активы, для которых будет выполнена переиндексация (доступен выбор нескольких). По умолчанию установлено значение All - операция выполняется для всех активов;

  • Размер блока – размер блока загружаемых данных, по умолчанию = 1024;

  • Проиндексировать бизнес-процессы — позволяет выбрать бизнес-процессы, данные которых будут переиндексированы. Параметр активен, если включен флаг "Проиндексировать данные бизнес-процессов".

  • Проиндексировать данные бизнес-процессов — флаг переиндексации бизнес-процессов, а также активных и завершенных задач, переменных, комментариев и вложений.

  • Проиндексировать записи – флаг переиндексации записей активов;

  • Писать лог ошибок – параметр, записывающий ошибки в лог;

  • Обработать лог ошибок – параметр, определяющий, будут ли браться данные из лога ошибок;

  • Проиндексировать связи – флаг переиндексации связей;

  • Проиндексировать черновики – флаг переиндексации черновиков.

Операция переиндексации данных предназначена для запуска индексации поисковой системы при значимых изменениях в структуре записей или при добавлении новых данных. Индексированные данные ускоряют поиск и отображаются в интерфейсе пользователя.

По условиям лицензирования у операции reindexDataJob может быть отключена многопоточность. В таком случае операция будет запускаться только на одном узле кластера.

Когда применяется

Операция запускается в случаях:

  • Если производились значимые изменения модели данных, записях, таблицы сопоставления и т.д.

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

  • Если было загружено много данных, и они не отображаются.

  • Если индекс данных был очищен вручную.

Периодичность запуска определяется администратором системы с учетом рабочих задач по обслуживанию Юниверс DG.

Лог ошибок

Примечание

Одновременно должен быть включен только один параметр: Писать лог ошибок (writeIdLog) ИЛИ Обработать лог ошибок (processIdLog)

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

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

В случае, если необходимо переиндексировать большие данные:

  • сперва запускается операция с Писать лог ошибок.

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

Также при больших данных можно отключать параметры Очищать индексы и Обновить маппинги.

Механизм работы параметра Размер блока (blockSize)

Все количество обрабатываемых записей делится на части по blockSize записей.

Затем в каждой части обрабатывается одним тредом по com.unidata.mdm.job.reindex.data.commit.interval записей (в памяти держится информация по этому количеству записей, при переходе к следующим записям память очищается), пока не кончатся записи.

Параметр com.unidata.mdm.job.reindex.data.commit.interval как правило, не нуждается в редактировании. Рекомендуемого значения 1024 достаточно для большинства задач. Чем больше этот параметр, тем больше памяти может быть занято в один момент времени. Если этот параметр больше, чем blockSize, то фактически этот параметр будет равен blockSize.

org.unidata.mdm.job.reindex.data.threads - количество одновременно обрабатываемых тредов.

Параметры com.unidata.mdm.job.reindex.data.commit.interval и org.unidata.mdm.job.reindex.data.threads задаются в backend.properties.

Таким образом, следует выбирать org.unidata.mdm.job.reindex.data.threads по количеству логических ядер процессора (использовать равное или меньшее число, в зависимости от наличия другой нагрузки на процессор).

При указании небольшого blockSize легче отслеживать прогресс операции через UI (менеджер запусков > выбрать запуск > количество выполненных шагов). С точки зрения производительности лучше использовать достаточно большой blockSize, чтобы количество мигрируемых записей было примерно равно N * blockSize * com.unidata.mdm.job.reindex.data.threads, где N – не слишком большое натуральное число, например, 1.

Если blockSize слишком большой (например, 500000), то часть данных может не записаться, но при этом операция завершится успешно.

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

Также blockSize необходимо выбирать в соответствии с общим количеством данных чтобы количество партиций не было слишком большим. На таких больших данных, как в справочнике с адресами, оптимальным вариантом является 500-2000 партиций.

Обработка данных происходит последовательно: записи > связи > классификаторы > бизнес-процессы > матчинг. Сначала завершается обработка одного типа данных, затем происходит переход к другому. Обрабатываются те типы данных, которые есть в наличии.

Задача переиндексации DG (reindexDGDataJob)

Операция предназначена для переиндексации активов и связей DG, а также для черновиков. Операция запускает процесс индексации Opensearch и OrientDB при значимых изменениях в структуре записей с целью ускорения поиска.

  • Имя пользователя – имя пользователя, от имени которого будет запущена операция;

  • Размер блока – размер блока загружаемых данных, по умолчанию = 1024;

  • Проиндексировать черновики – параметр, обновляющий информацию обо всех черновиках;

  • Писать лог ошибок – параметр, записывающий ошибки в лог;

  • Обработать лог ошибок – параметр, определяющий, будут ли браться данные из лога ошибок;

  • Не создавать стандартный отчет – параметр отвечает за создание стандартного отчета в уведомлениях после завершения операции;

  • Проиндексировать активы – флаг переиндексации активов;

  • Обновить маппинги графа – флаг переиндексации графов связей;

  • Очищать индексы – параметр, очищающий индексы Opensearch, а также индексы результатов запусков сканеров;

  • Обновить маппинги – параметр, обновляющий маппинги в Opensearch;

  • Очищать граф – параметр, очищающий графы связей;

  • Проиндексировать связи – флаг переиндексации связей.

  • Проиндексировать модель данных - флаг переиндексации модели данных.

Когда применяется

Операция запускается в случаях:

  • Если производились значимые изменения модели данных активов и в самих записях активов.

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

  • Если было загружено много данных, и они не отображаются.

  • Если индекс данных был очищен вручную.

Периодичность запуска определяется администратором системы с учетом рабочих задач по обслуживанию Юниверс DG.

Операция импорта шаблонов DQ (checkTemplateImportJob)

Операция является частью интеграции с продуктом Юниверс DQ. Операция может быть использована только в случае, если настроено подключение к Юниверс DQ.

  • Типы активов – выбор типов активов для импорта;

  • Размер блока – размер блока загружаемых данных, по умолчанию = 1024.

Операция экспорта аудита (exportAuditJobName)

Операция позволяет выгружать логи аудита.

  • Куда сохранить лог - по умолчанию значение: Notification (Уведомления системы).

  • Включить заголовок в файл - флаг, включающий строки с датой выгрузки и описание форматов в файл экспорта.

  • Формат экспорта - выпадающий список: CEF или SEQ.

  • От какой даты выгрузить логи - дата начала периода выгрузки. Если дата не указана, то проставляется текущая - количество дней из параметра "Период выгрузки". Если указана конкретная дата - количество дней из параметра "Период выгрузки".

  • a - b = c, где а - параметр "От какой даты выгрузить логи", b - параметр "Период выгрузки", c - диапазон выгрузки логов.

  • Имя пользователя - системное имя пользователя, имеющего права на экспорт.

  • Период выгрузки - количество дней для отображения в выгрузке (по умолчанию 1d). Указывается число и далее символ m (минуты), h (часы), d (дни), M (месяцы), y (годы).

  • Размер блока экспортируемых данных - размер блока загружаемых данных, по умолчанию = 5000.

  • Источник логов для экспорта - выпадающий список: opensearch (поисковый индекс) или db (база данных).

Когда применяется

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