Перейти к основному содержимому
Версия: 1.15.0 (последняя)

Конфигурация плановой очистки данных

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

Система очистки отвечает за удаление устаревших данных и позволяет настраивать расписание очистки с помощью cron-выражений.

Точка управления системой — сервис baf-dashboard, а непосредственное удаление данных выполняют сервисы platform-backend и video-recorder.

platform-backend

Сервис отвечает за удаление устаревших фотографий попыток авторизации. Фотографии регистрационных попыток удаляются только при удалении соответствующего аппликанта.

Все параметры настройки очистки находятся в файле platform.values.yaml.

Расписание и параметры очистки

Процедура очистки запускается по расписанию, которое настраивается через переменные:

  • backend.planned_retention_policy_day_of_week - день недели (cron)
  • backend.planned_retention_policy_hour - час (cron)
  • backend.planned_retention_policy_minute - минута (cron)

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

Удаление данных выполняется пакетами для распределения нагрузки:

  • backend.delete_sample_batch_size - количество кадров, удаляемых за одну операцию
  • backend.delete_sample_batch_sleep - пауза в секундах между операциями удаления

Количество параллельных процессов очистки настраивается через backend.retention_process_count. Увеличение числа процессов позволяет параллельно выполнять очистку данных разных аккаунтов, при этом данные одного аккаунта всегда обрабатываются одним процессом.

примечание

Не устанавливайте delete_sample_batch_sleep больше 5 секунд — это напрямую влияет на длительность транзакций в системе. Для снижения нагрузки рекомендуется уменьшить размер пакета.

Режим обратной совместимости

При старте сервиса на чистой базе или на BAF версии 1-14-0 и старше процедура работает в режиме обратной совместимости.

В этом режиме удаляются фото попыток, созданные раньше значения backend.sample_ttl от времени запуска процедуры.

Процедура переходит в новый режим работы при открытии страницы настроек очистки в дашборде.

примечание

Режим работает для каждого аккаунта индивидуально — переход на новый режим в одном аккаунте не затрагивает другие аккаунты.

Режим плановой очистки

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

При выполнении условий запускается очистка данных от вычисленной из настроек очистки плановой даты.

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

video-recorder

Сервис отвечает за удаление устаревших видео-данных попыток.

Все параметры настройки очистки находятся в файле video-recorder.values.yaml.

Расписание и параметры очистки

Процедура запускается аналогично сервису platform-backend, но частота проверки настраивается через переменную:

  • video_recorder.retention_check_frequency - частота запуска процедуры проверки очистки в секундах (максимальный период - 1 час)

В стандартных настройках частота установлена на 3600 секунд, то есть очистка выполняется раз в час.

Удаление данных выполняется пакетами для распределения нагрузки:

  • video_recorder.retention_batch_size - количество записей, удаляемых за одну операцию
  • video_recorder.retention_batch_pause - пауза в секундах между операциями удаления

Количество параллельных процессов очистки настраивается через video_recorder.retention_process_count.

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

примечание

Не устанавливайте video_recorder.retention_batch_pause больше 5 секунд — это напрямую влияет на длительность транзакций в системе. Для снижения нагрузки лучше уменьшить размер пакета.

Особенности работы с MinIO

S3-хранилище не удаляет данные сразу, а перемещает их в папку .trash, которая очищается один раз в minio.delete_cleanup_interval секунд.

подсказка

Важно, чтобы объем данных, удаляемых video-recorder за этот период, не вызывал I/O шторм. При изменении размера пакета или длительности паузы необходимо соответствующим образом корректировать minio.delete_cleanup_interval.

Режим обратной совместимости

Сервис не имеет режима обратной совместимости. При обновлении BAF с версии 1-14-0 и старше очистка данных средствами MinIO отключается. До включения плановой очистки данные хранятся бесконечно.

примечание

Ошибочный контент все также удаляется средствами MinIO — данные старше minio.error_data_retention_days удаляются автоматически.

Режим плановой очистки

Логика работы плановой очистки аналогична сервису platform-backend. После перехода в этот режим процедура проверяет необходимость выполнения очистки. Если плановое время не наступило или очистка отключена, процедура завершается без действий. При выполнении условий запускается очистка данных от вычисленной плановой даты.

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