Операция очистки данных при изменении модели

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

Параметры операции

  • ID операции - позволяет переопределить ID операции, генерируемый системой. Данный ID выводится в панель уведомлений.

  • Размер блока - размер блока для разбиения эталонных данных (записей/связей).

  • Пакет обновления - размер блока обработки записей в рамках одной транзакции для обновления атрибутов.

  • Шарды - номера шардов данных в базе данных. Позволяет сузить объем обрабатываемых данных.

  • Реестры/справочники - реестры/справочники для обработки. Позволяет сузить объем обрабатываемых данных.

  • Связи - связи для обработки (очистка атрибутов). Позволяет сузить объем обрабатываемых данных.

  • Очистка атрибутов записей - включает/выключает очистку атрибутов записей выбранных реестров и справочников.

  • Очистка атрибутов связей - включает/выключает очистку атрибутов выбранных связей.

  • Очистка удаленных связей - включает/выключает удаление неактуальных связей.

Как работает операция

Операция выполняет три вида очистки:

  • Очистка атрибутов записей. Операция выбирает и сериализует записи из таблицы org_unidata_mdm_data.record_vistory, в случае нахождения в данных неактуальных атрибутов - удаляет их и делает апдейт записи этой таблицы, только в случае если есть изменения. Очистка выполняется только для выбранных реестров и справочников. Операция очищает все ревизии независимо от статуса и периода актуальности.

  • Очистка атрибутов связей. Операция выбирает и сериализует записи из таблицы org_unidata_mdm_data.relation_vistory, в случае нахождения в данных неактуальных атрибутов - удаляет их и делает апдейт записи этой таблицы. Очистка выполняется только для выбранных связей. Операция очищает все ревизии независимо от статуса и периода актуальности.

  • Очистка связей. Операция выбирает все существующие связи в данных в БД, которых нет в метамодели, и делает физическое удаление из всех таблиц org_unidata_mdm_data.relation_*. При удалении файловых атрибутов также удаляются сами данные файлов и их мета из соответствующих таблиц.

Статистика выполнения

По завершении операции в панели уведомлений отображается статистика (Рисунок 1), например:

Обработано ревизий записей:

  • очищено:

  • пропущено: (формула: {Обработано ревизий записей} - {очищено} - {пропущено из-за ошибки})

  • пропущено из-за ошибки:

Обработано удаленных связей:

  • удалено:

  • пропущено: (формула: {Обработано удаленных связей} - {удалено} - {пропущено из-за ошибки})

  • пропущено из-за ошибки:

Обработано ревизий связей:

  • очищено:

  • пропущено: (формула: {Обработано ревизий связей} - {очищено} - {пропущено из-за ошибки})

  • пропущено из-за ошибки:

Ограничения

  • В операцию не включена очистка данных по классификации - осталась текущая реализация Jet операции.

  • Операция не очищает архивные ревизии (см. Операция архивации ревизий).

  • После выполнения операции очистки необходимо выполнить операцию реиндекса.

Статистика выполнения операции

Рисунок 1 - Статистика выполнения операции