Настройка параметров версионирования | Tdg

Версия:

2.x
Руководство разработчика Версионирование Настройка параметров версионирования

Настройка параметров версионирования

Версионирование выключено по умолчанию, чтобы улучшить производительность TDG.

Вы можете включить версионирование в конфигурации системы – в файле config.yml. Для этого укажите параметр versioning.

Пример. Воспользуйтесь типом объекта Country из примера модели данных и настройте для него версионирование. Для этого откройте файл config.yml и в блоке versioning укажите следующее:

versioning:
  - type: Country
    enabled: true

После этого версионирование для Country будет включено.

Примечание

При включении версионирования старая история версий будет удалена.

Вы также можете настроить следующие параметры, относящиеся к версионированию:

  • keep_version_count– количество хранимых версий. По умолчанию: 5. Минимальное значение: 1. Если вы не хотите ограничивать количество хранимых версий, удалите этот параметр. Если параметр задан, старые версии будут удаляться. Только новые версии, количество которых меньше или равно заданному значению параметра, будут сохранены. Каждый раз, когда добавляется новая версия, система проводит проверку и удаляет старые версии при необходимости

  • delay_sec – интервал в секундах, через который запускается новая проверка устаревших объектов. Найденные устаревшие объекты удаляются. Минимальное значение: 1

  • lifetime_hours – время жизни версии в часах, также может быть задано в днях (lifetime_days) или годах (lifetime_years). По умолчанию не задано, поэтому версии хранятся неограниченное время. Минимальное значение: 1. Если параметр задан, версии, существующие дольше заданного значения параметра, будут удалены.

  • strategy – стратегия удаления предыдущих версий из хранилища (архивирование). Вы можете определить стратегию на постоянное удаление версий (permanent), вывод в файл (dir) или холодное хранение (cold_storage). По умолчанию: permanent

Подробную информацию об этих параметрах вы можете найти в файле config.yml.

Пример. Задайте параметры версионирования для типов объектов Country и City из примера модели данных.

Country: хранить 7 версий, ограничить время жизни 4 часами, запускать проверку через 1 секунду, использовать холодное хранение.

City: хранить 3 версии, ограничить время жизни 2 днями, запускать проверку через 1 секунду, архивировать версии в файл.

versioning:
  - type: Country
    enabled: true
    keep_version_count: 7
    lifetime_hours: 4
    delay_sec: 1
    strategy: cold_storage
    schedule: "0 0 0 */1"
  - type: City
    enabled: true
    keep_version_count: 3
    lifetime_days: 2
    delay_sec: 1
    schedule: "0 0 0 */1 * *"
    dir: "/var/data"
    file_size_threshold: 100001

Примечание

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

Включить версионирование и задать эти параметры также можно в разделе Data types в веб-интерфейсе. При указании значения параметра lifetime_hours больше 24 часов система автоматически пересчитает значение в соответствующее количество дней, месяцев или лет.

Нашли ответ на свой вопрос?
Обратная связь